Próbálja ki!
Az adatbázisok és a webalkalmazások nagyvállalati előnyökkel járhatnak. Az adatbázisok tervezése létfontosságú a célok elérésében, akár az alkalmazottak adatait szeretné kezelni, heti jelentéseket készíteni az adatok alapján, vagy nyomon kívánja követni az ügyfelek megrendeléseit. Ha időt fordít az adatbázisok tervezésének megismerésére, azzal olyan adatbázisokat hozhat létre, amelyek már az első alkalommal megfelelően működnek, és alkalmazkodnak a változó igényekhez.
Fontos
Az Access-webappok különböznek az asztali adatbázisoktól. Ez a cikk nem foglalkozik a webappok tervezésével.
Fogalmak és kifejezések
Kezdjük néhány alapvető kifejezés és fogalom megismerésével. Ha jól használható adatbázist szeretne tervezni, hozzon létre olyan táblákat, amelyek egy témára összpontosítanak. A táblákban a témához szükséges összes adatot a lehető legkisebb adategységet tartalmazó mezőkbe gyűjtse.
| Relációs adatbázisok | Egy adatbázis, amelyben az adatok táblázatokhoz hasonló táblákra vannak osztva. Minden táblának csak egy témája van, például Vevők (egy tábla) vagy Termékek (egy másik). |
|---|---|
| Rekordok és mezők | Tábla különálló adatainak tárolása. A sorok (vagy rekordok) tárolják az egyes egyedi adatpontokat, például egy ügyfél nevét. Az oszlopok (vagy mezők) a lehető legkisebb egységbe különítik az egyes adatpontokról rögzített információkat – a vezetéknév lehet az egyik oszlop, a vezetéknév pedig egy másik oszlop. |
| Elsődleges kulcs: | Minden rekord egyediségét biztosító érték. Lehet például, hogy van két azonos nevű vevő, Erzsébet András. De az egyik Elizabeth Andersen rekord elsődleges kulcsa a 12, a másiké pedig 58. |
| Szülő-gyermek kapcsolatok | Táblák közti általános kapcsolatok. Egy ügyfélnek például több rendelése is lehet. A szülőtáblák elsődleges kulcsokkal rendelkeznek. A gyermektáblák idegen kulcsokkal rendelkeznek, amelyek az elsődleges kulcs értékei, amelyek azt jelzik, hogy a gyermektábla rekordjai hogyan kapcsolódnak a szülőtáblához. Ezeket a kulcsokat kapcsolat köti össze. |
Milyen a jó adatbázisterv?
A helyes adatbázis-tervezéshez két alapelv tartozik:
- Kerülje az ismétlődő információkat (redundáns adatokat). Helyet pazarol és növeli a hibák előfordulásának valószínűségét.
- Győződjön meg arról, hogy az adatok helyesek és teljesek. A lekérdezésekben és jelentésekben hiányos vagy hibás információk áramlanak át, és végső soron téves döntésekhez vezethetnek.
Segítség a problémák megoldásához:
- Az adatbázis-információkat szűk fókuszú tematikus táblákba oszthatja. Kerülje az adatok ismétlődését több táblában. (A vevők nevének például csak egy táblába kell kerülnie.)
- A táblákat kulcsok segítségével illessze össze, ne az adatokat duplikálja.
- Olyan folyamatokat tartalmaz, amelyek támogatják és biztosítják az adatbázis-információk pontosságát és sértetlenségét.
- Az adatbázis tervezésénél tartsa szem előtt az adatfeldolgozási és a jelentéskészítési igényeit.
Adatbázisai hosszú távú hasznosságát javíthatja a következő öt tervezési lépésben:
1. lépés: Az adatbázis céljának meghatározása
Mielőtt nekikezdene, tűzzön ki egy célt az adatbázishoz.
További részletek
Ha célzott szeretne maradni a tervezésen, foglalja össze az adatbázis célját, és gyakran hivatkozzon az összefoglalásra. Ha egy kisebb méretű vállalkozás számára szeretne adatbázist létrehozni, például írjon valami egyszerűt, például: "A vevőadatbázis a vevőkkel kapcsolatos információkat tárolja, levelezéshez és jelentések létrehozásához." Vállalati adatbázisok esetén több bekezdésre lehet szükség annak leírásához, hogy a különböző szerepkörökben dolgozó személyek mikor és hogyan fogják használni az adatbázist és az adatokat. Hozzon létre egy konkrét és részletes küldetésnyilatkozatot, amelyre a tervezési folyamat során hivatkozni fog.
2. lépés: A szükséges információk megkeresése és rendszerezése
Gyűjtse össze a rögzíteni kívánt összes adattípust, például a termékek nevét és a rendelési számokat.
További részletek
Kezdje a meglévő információs és nyomkövetési módszerekkel. Előfordulhat például, hogy jelenleg egy főkönyvben vezeti a megrendeléseket, vagy a vevők adatait papíralapú űrlapokon tárolja. Ezeket a forrásokat használva listázhatja az aktuálisan rögzített információkat (például az űrlapok összes mezőjét). Ha jelenleg nem rögzít fontos információkat, gondolja végig, hogy milyen diszkrét információkra van szüksége. Minden egyes adattípus egy-egy mezővé válik az adatbázisban.
Ne aggódjon amiatt, hogy az első listát tökéletesre fogja tenni – idővel finomhangolhatja. De tartsa szem előtt azokat a személyeket, akik ezeket az információkat használják, és kérje ki az ötleteiket.
Ezután gondolja át, mit szeretne az adatbázissal kihasználni, és hogy milyen jelentéseket készít, illetve milyen levelezést szeretne létrehozni. Ezután győződjön meg arról, hogy a célok eléréséhez szükséges adatokat rögzíti. Ha például egy jelentést szeretne létrehozni, amely régiónkénti értékesítéseket mutat be, akkor az értékesítési adatokat regionális szinten kell rögzítenie. Próbálja meg úgy vázolni a jelentést, ahogyan azt meg szeretné jeleníteni. Ezután sorolja fel a jelentés létrehozásához szükséges adatokat. Végezze el ugyanezt a levelezésekkel és az adatbázisból származó más kimeneti adatokkal.
Példa
Tegyük fel, hogy rendszeres időközönként történő be- és kikapcsolási lehetőséget biztosít az ügyfeleknek, és szeretne egy listát nyomtatni a feliratkozottakról. A Vevők táblázatban szerepelnie kell egy Küldés Email oszlopnak Igen és Nem értékkel.
Azoknak, akik hajlandóak e-maileket fogadni, szükségük van egy e-mail-címre, amelyhez szintén mező szükséges. Ha megfelelő megszólítást szeretne felvenni (például úr, asszony vagy asszony), szúrjon be egy megszólítás mezőt. Ha az e-mailekben keresztnevükön szeretné szólítani az ügyfeleket, adjon hozzá egy Utónév mezőt.
Tipp:
Ne felejtsen el minden információt annak legkisebb használható részére bontani, például egy vevőt tartalmazó tábla vezeték- és utónevére. Általánosságban elmondható, hogy ha valamilyen adat (például az ügyfél vezetékneve) alapján szeretne rendezni, keresni, számításokat végezni vagy jelentést készíteni, azt az elemet külön mezőben kell tárolnia.
3. lépés: Az információk táblákra osztása
Az információkat ossza fel nagyobb entitásokra vagy témákra (például termékek, vevők és megrendelések). Minden témából tábla lesz.
További részletek
A szükséges információk listájának elkészítése után határozza meg azokat a nagyobb entitásokat (vagy témákat), amelyekre szüksége van az adatok rendszerezéséhez. Kerülje az adatok duplikálását az entitások között. Egy termékértékesítési adatbázis előzetes listája például így nézhet ki:
A fő entitások a következők: vevők, szállítók, termékek és megrendelések. Kezdje tehát ezzel a négy táblával: az egyik a vevőkkel kapcsolatos adatokat, a másik a szállítók adatait és így tovább. Lehet, hogy nem ez a végleges terv, de jó kiindulási pont.
Megjegyzés
A legjobb adatbázisok több táblát tartalmaznak. Kerülje a kísértést arra, hogy az összes információt egyetlen táblázatba helyezze. Ez duplikált információkat, nagyobb adatbázisméretet és több hibát eredményez. Úgy tervezze meg, hogy minden tényt csak egyszer rögzítsen. Ha ismétlődő adatokkal kell szembenéznie (például egy szállító címével), akkor alakítsa át az adatbázist úgy, hogy az adatok egy külön táblába kerüljenek.
Hogy megértse, miért jobb több tábla, mint kevesebb, tanulmányozza az alábbi táblázatot:
Minden sor tartalmazza a termék és a szállító adatait is. Mivel ugyanattól a szállítótól több terméket is szállíthat, a szállító neve és címe sokszor ismétlődik. Ezzel lemezterületet pazarol. Ehelyett csak egyszer rögzítse a szállítók adatait egy külön Szállítók táblában, és ezt a táblát kapcsolja a Termékek táblához.
A terv második problémája akkor nyilvánvaló, ha módosítani szeretné egy szállító adatait. Tegyük fel, hogy meg kell változtatnia egy szállító címét. Mivel a cím több helyen jelenik meg, ezért előfordulhat, hogy az egyik helyen módosítja a címet, egy másik helyen viszont elfelejti megtenni. A probléma megoldódik, ha a szállító címét egyetlen helyen tárolja.
Végül tegyük fel, hogy a Coho Winery csak egy terméket szállít, és Ön szeretné törölni a terméket, de meg szeretné tartani a szállító nevét és címét. Ezzel a tervvel hogyan törölhetné a termékrekordot a szállító adatainak elvesztése nélkül? A fenti táblában ezt nem teheti meg. Mivel minden rekord a szállító mellett az adott termékkel kapcsolatos adatokat is tartalmazza, lehetetlen az egyiket törölni a másik törlése nélkül. Ha külön tárolná ezeket az adatokat, ossza fel a táblázatot két részre: az elsőbe a termékadatok, a másikba a szállítók adatai találhatók. Ezt követően amikor töröl egy termékrekordot, azzal csak a termék adatait törli, a szállító adatait nem.
4. lépés: Információs elemek oszlopokká alakítása
Döntse el, milyen információkat szeretne tárolni az egyes táblákban. Ezekből a különálló adatdarabokból mezők lesznek a táblában. Egy Alkalmazottak táblában például a Vezetéknév, az Utónév és a Felvétel dátuma mezők szerepelhetnek.
További részletek
Miután kiválasztotta egy adatbázistábla tárgyát, annak oszlopai csak az adott téma adatait tárolják. Egy terméktáblázat például csak a termékek adatait tárolja, a szállítókat nem.
A táblázatban nyilvántartandó információk meghatározásához használja a korábban létrehozott listát. A Vevők tábla tartalmazhatja például a következőket: Utónév, Vezetéknév, Cím, Send Email, Megszólítás és Email Address. A tábla minden egyes rekordja (vevő) ugyanazokból az oszlopokból áll, tehát pontosan ugyanazokat az adatokat tárolja az egyes vevőkről.
Hozza létre az első listát, majd ellenőrizze és pontosítsa. Ne felejtse el a lehető legkisebb mezőkre bontani az információkat. Ha például az eredeti listában a Cím mező szerepel, bontsa azt lakcímre, településre, házszámra és irányítószámra, vagy ha vevői globálisak, még több mezőre. Így például a megfelelő formátumban küldhet leveleket, vagy állam szerint készíthet jelentést a megrendelésekről.
Miután pontosította az adatoszlopokat az egyes táblákban, készen áll meghatározni az egyes táblák elsődleges kulcsát.
5. lépés: Az elsődleges kulcsok megadása
Határozza meg az egyes táblák elsődleges kulcsát. Az elsődleges kulcs, például a Termékazonosító vagy a Rendelésazonosító egyedileg azonosítja az egyes rekordokat. Ha nincs egyértelmű, egyedi azonosítója, az Access segítségével hozzon létre magának egyet.
További részletek
Szüksége van egy módszerre, amellyel minden táblázat egyes sorait egyedileg azonosíthatja. Emlékszik a korábbi példára, amelyben két vevőnek ugyanaz a neve? Mivel a közös nevük van, szükség van arra, hogy külön azonosíthassa őket.
Ezért minden táblázatnak tartalmaznia kell egy oszlopot (vagy oszlopok halmazát), amely egyedileg azonosítja az egyes sorokat. Ezt nevezik elsődleges kulcsnak , és gyakran egyedi szám, például alkalmazotti azonosító vagy sorozatszám. Az Access elsődleges kulcsokat használ a különböző táblákból származó adatok gyors társításához és egyesítéséhez.
Előfordulhat, hogy az elsődleges kulcs két vagy több mezőből áll. A rendelések adatait tartalmazó Rendelés részletei tábla például két oszlopot használhat az elsődleges kulcsban: Rendelésazonosító és Termékazonosító. Ha egy elsődleges kulcs egynél több oszlopot használ, összetett kulcsnak is nevezzük.
Ha már van egy egyedi azonosítója egy táblázatban lévő adatokhoz, például a katalógusban szereplő termékeket egyedileg azonosító termékszámokhoz, használja azt, de csak akkor, ha az értékek megfelelnek az elsődleges kulcsokra vonatkozó szabályoknak:
- Az azonosító minden rekord esetében eltérő lesz. Az elsődleges kulcsokban nem engedélyezett az ismétlődő értékek.
- A tételhez mindig tartozik érték. A tábla minden rekordjának rendelkeznie kell egy elsődleges kulccsal. Ha több oszlopot használ a kulcs létrehozásához (például Cikkcsalád és Cikkszám), mindkét értéknek mindig jelen kell lennie.
- Az elsődleges kulcs olyan érték, amely nem változik. Mivel a kulcsokra más táblák is hivatkoznak, az egyik táblában az elsődleges kulcs bármilyen módosítása azt jelenti, hogy az elsődleges kulcs módosul mindenhol, ahol hivatkozik rá. A gyakori módosítások növelik a hibák kockázatát.
Ha nincs egyértelmű azonosítója, használjon tetszőleges, egyedi számot elsődleges kulcsként. Minden megrendeléshez hozzárendelhet például egy egyedi megrendelésszámot, amely kizárólag a megrendelés azonosítását szolgálja.
Tipp:
Ha elsődleges kulcsként egyedi számot szeretne létrehozni, vegyen fel egy Számláló adattípusú oszlopot. A Számláló adattípus automatikusan egyedi, numerikus értéket rendel minden rekordhoz. Az ilyen típusú azonosítók nem tartalmaznak az általa képviselt sor leírására vonatkozó tényleges információt. Ideális elsődleges kulcsként, mivel a számok nem változnak, szemben az elsődleges kulccsal, amely egy sor adatait, például telefonszámot vagy ügyfélnevet tartalmazza.