Az alábbi szakaszok bemutatják az adatbázistábla kapcsolatainak kialakítását. Az objektumnevek meg vannak adva, így könnyen megvizsgálhatja őket a Northwind 2.0 Starter Edition adatbázisban.
A hat táblát és a köztük lévő kapcsolatokat megjelenítő Kapcsolatdiagram megnyitásához válassza az Adatbáziseszközök > Kapcsolatok lehetőséget.
Ez a diagram mind a hat táblát mutatja. A diagramon a táblák közötti vonalak azonosítják a köztük lévő kapcsolatokat. A vonalak végén az 1 és a végtelen szimbólum (∞) a kapcsolat egy oldalát (például egy ügyfelet) és a kapcsolat többoldalas részét jelölik. Egy ügyfél például számos rendelést küld. További információ: Útmutató a táblakapcsolatokhoz.
Az alábbi alapelvek a Northwind 2.0 Starter Edition és általában a táblázatok tábláira vonatkoznak.
Elsődleges kulcsok Egyedileg azonosítsa egy tábla minden rekordját. Minden tábla rendelkezik elsődleges kulccsal. A kapcsolatdiagramon a kulcsszimbólumok azonosítják ezeket az elsődleges kulcsokat. Az elsődleges kulcsok elnevezési konvencióit annak a táblának nevezzük, amelyben szerepelnek, például "TableNameID".
Számláló mező hozzáadása elsődleges kulcsként.
Hatékonyság A jobb teljesítmény és a hatékonyabb tárolás érdekében az elsődleges kulcsoknak numerikusnak kell lenniük. Emellett kényelmesebb, ha az Access automatikusan létrehozza az új, egyedi értéket az egyes új rekordok elsődleges kulcsához. A Számláló adattípus mindkét tulajdonsággal rendelkezik. A számlálók egyébként nem értelmezhető számok, és nem szolgálnak más célt. További információ:Idegen kulcsok Egy tábla egy vagy több idegen kulcssal is rendelkezhet attól függően, hogy az adatbázis más tábláihoz kapcsolódik-e. Az idegen kulcs olyan értékeket tartalmaz, amelyek megfelelnek a kapcsolódó tábla elsődleges kulcsában szereplő értékeknek.
Egyedi indexek A táblák más mezői saját egyedi indexekkel is rendelkezhetnek, például OrderStatus.StatusCode. Logikátlan, ha az OrderStatus táblában két Rendelési állapot szerepel ugyanazzal a kóddal, annak ellenére, hogy maga a StatusCode nem az elsődleges kulcs. Az egyedi index arra utasítja az Accesst, hogy megakadályozza a mezőben szereplő ismétlődő értékek használatát.
Nem egyedi indexek A táblák indexekkel is rendelkezhetnek a mezők keresésének és rendezésének felgyorsítása érdekében, például Orders.OrderDate. Számos rendelés leadható ugyanazon a napon, és gyakran szeretne keresni és rendezni a rendelési dátumok alapján. Ezen a mezőben található egy nem egyedi index, amely felgyorsítja a keresést és a rendezést.
Tábla- és mezőnevek A dolgokat tetszőleges módon elnevezheti, de a konzisztencia fontos. Azt javasoljuk, hogy a táblázat- és mezőnevek egy vagy több szóból álljanak, és ne legyenek közöttük szóközök, és ne legyenek speciális karakterek, például perjel (/), kettőskereszt (#) vagy százalék (%). Használja például az OrderDate parancsot, de a Rendelés dátumát nem; Használja az OrderNumber vagy az OrderNo függvényt, de az Order#-et nem.
CamelCase A szavak nagybetűssé emelésével kiemelheti a név egyes részeit, például az OrderDate értéket, de az Orderdate vagy az orderDate értéket nem.
Kötelező érték Ez az elv felveti az üzleti szabályok fontosságát egy alkalmazás esetében. Bizonyos helyzetekben bizonyos mezőkben értékeket vagy akár konkrét értékeket is meg kell követelni. Például mi a jó egy rendelés, anélkül, hogy ismerné az ügyfelet, aki leadta? Ez azt jelenti, hogy a CustomerID a Rendelések tábla kötelező mezője.
Számított mezők Az Access támogatja a táblák számított mezőit, például az Employees.FullName mezőt. Érdemesebb lehet számított mezőket létrehozni egy lekérdezésben, mint egy táblában.
Mellékletmezők Az Access támogatja a mellékletmezőket, például az Alkalmazottak.Picture mezőt, amely az alkalmazott képét tartalmazza. A mellékletek képeket, dokumentumokat, e-maileket és más bináris információkat tárolhatnak. A mellékletek sok helyet foglalnak el az adatbázisban. hatékonyabb a mellékletek fájlkiszolgálón való tárolása.
Többértékű mezők Ahogy a neve is mutatja, a többértékű mezők egy vagy több értéket tárolnak egyetlen mezőben, például Alkalmazottak.Cím. Javasoljuk, hogy takarékosan használja őket, különösen akkor, ha az adatbázist szeretné hatékonyan használni. A legtöbb más adatbázisrendszer nem rendelkezik ilyenekkel, így ez sok újramunkát igényelne.
Az adattípusokkal kapcsolatos további információkért lásd: Bevezetés az adattípusokba és a mezőtulajdonságok használatába.
Ez a szakasz az egyes táblák legfontosabb funkcióit ismerteti. Egy tábla tervének áttekintéséhez jelölje ki azt a navigációs ablakban, kattintson rá a jobb gombbal, válassza a Tervező nézet parancsot, vagy válassza az Adatbáziseszközök > Kapcsolatok lehetőséget, majd kattintson a jobb gombbal egy táblaobjektumra. További információ: Bevezetés a táblák használatába.
Fontos: Kerülje a fenntartott szavak használatát, amelyek elnevezési ütközéseket okozhatnak. További információt a Fenntartott szavak és szimbólumok az Accessben című témakörben talál.
Employees tábla
Ez a táblázat a Northwind alkalmazottaival kapcsolatos információkat tárolja.
Mezők |
Ismertetés |
FirstName, LastName |
Mindkét név megadása kötelező, és a Northwindben együtt egyedi kombinációnak kell lenniük. A táblatervben az Indexek párbeszédpanel megnyitásakor láthatja, hogy a FirstName + LastName név egyedi indexszel rendelkezik. Mivel a FirstName és a LastName egyedileg indexelt, a Northwind tábla nem tud két azonos nevű alkalmazottat tárolni. Más helyzetekben más üzleti szabályt is használhat. |
FullNameFNLN, FullNameLNFN |
Tekintse meg a számított mezők kifejezéstulajdonságait annak megtekintéséhez, hogy az Access hogyan egyesíti az értékeket a számított mezőkben. Középső kezdőbetű hozzáadásához adja hozzá a meglévő kifejezéshez megfelelő térközzel az összetevők között. |
Telefon mezők |
A telefonokra vonatkozó üzleti szabály az, hogy az alkalmazottak preferenciája relevánsabb, mint a szolgáltatás típusa. Ezért az elsődleges és a másodlagos telefonszámok használata nem cella, iroda, otthoni stb. |
Megszólítás |
A Megszólítás egy Rövid szöveg mező. Az Access többértékű mezőfunkciójának szemléltetéséhez ez egy előre definiált értékek szerkeszthető listáját tartalmazó kombinált lista. Az ilyen rövid, statikus listák gyakran többértékű mezőket jelölnek, mert nem sokat változnak, ha valaha is. |
JobTitle |
A JobTitle egy másik kötelező mező. |
Customers tábla
Ez a tábla a Northwind ügyfeleiről tartalmaz információkat.
Mezők |
Ismertetés |
CustomerName |
A Northwind ügyfelei vállalkozások, és az ügyfélnév megadása kötelező. Az alkalmazottak nevével ellentétben azonban ez nem egyedi indexelt, így két vagy több ügyfélnek is ugyanaz a neve. |
PrimaryContactFirstName, PrimaryContactLastName, PrimaryContactJobTitle |
Az elsődleges kapcsolattartó utóneve és vezetékneve és beosztása nem kötelező, mert előfordulhat, hogy az ügyfeleknek nincs egyetlen személyük elsődleges kapcsolattartóként. Előfordulhat, hogy a partnerek nem adják meg a beosztásukat a rendeléshez. |
BusinessPhone |
A Northwind csak egy telefonszámot igényel minden ügyfél számára, bár ez nem teszi lehetővé több telefonszám rögzítését az ügyfelek vagy az ügyfelek kapcsolattartói számára. Valós helyzetekben az összetettebb üzleti szabályok általában a kapcsolattartási adatokra vonatkoznak. |
Cím, város Állapot, ZIP |
A Northwindnek szüksége van egy címre a rendelések ügyfeleknek történő szállításához. Egy ügyfélnek csak egy általános címe van. Valós helyzetekben az ügyfelek gyakran külön számlázási, szállítási vagy egyéb címmel rendelkeznek. A szervezet egy másik üzleti szabálya további mezőket igényelne. |
Megjegyzések |
A Jegyzetek mező egy Hosszú szöveg adattípus, amely legfeljebb 1 GB szöveget tárol. Ez lehetővé teszi, hogy részletes megjegyzéseket adjon meg az ügyfelekről a későbbi rendelési helyzetekben való használathoz. |
Orders tábla
Ez a tábla a Northwind megrendeléseiről tartalmaz információkat.
Mezők |
Ismertetés |
OrderDate, ShippedDate, PaidDate |
A rendelésekhez három dátum szükséges. Ezek mind Dátum/Idő típusúak, de két formátummal rendelkeznek. Az OrderDate dátummal és időponttal is rendelkezik, mivel érdemes lehet elemezni a rendelésmennyiséget a nap különböző részeihez. A másik két dátumhoz csak a dátumot kell megadni. A SzállításiDátum és a PaidDate táblaérvényesítési szabálya biztosítja, hogy ezek a dátumok ne legyenek az OrderDate előtt. |
OrderStatusID |
A rendelés állapota azt jelzi, hogy hol található a megrendelés a Northwind munkafolyamatban. A rendelések négy fázisban haladnak át: Új – > Számlázva – > Kiszállítva – lezárt >.Az aktuális OrderStatus idegen kulcsa az OrderStatus keresési táblájának OrderStatusID azonosítóját használja. Az Állapotkeresés tábla biztosítja, hogy csak a négy előre definiált állapot rendelhető hozzá egy rendeléshez. |
Rendelés részletei tábla
Ez a tábla a Northwind megrendelési adataival kapcsolatos információkat tárolja.
Mezők |
Ismertetés |
OrderID |
Az OrderDetails tábla minden sorelemének a Rendelések táblában egy rendeléshez kell tartoznia. Az OrderID a rendelést azonosító idegen kulcs. Amint azt korábban említettük, egy vagy több sorelemet tartalmazó sorrend egy-a-többhöz kapcsolatot ábrázol. |
Termelés |
Az OrderDetails tábla minden rekordja tartalmazza a megrendelt termék termékazonosítóját. A ProductID egy külső kulcs az OrderDetails táblában, amely ebben a sorrendben azonosítja a terméket. Ez egy egy-a-többhöz kapcsolat is. |
OrderID+ Termékazonosító |
Ahogy az Alkalmazottak táblában is láthatta, több mező is rendelkezhet egyedi indexszel. Az OrderDetails táblában az OrderID+ProductID egyedi indexe biztosítja, hogy minden rendelés csak egyszer tartalmaz egy terméket. Amikor megnyitja az Indexek tulajdonságlapot a menüszalagról, láthatja ezt az egyedi indexet. |
Products tábla
Ez a táblázat a Northwind termékeivel kapcsolatos információkat tárolja.
Mezők |
Ismertetés |
ProductCode |
Az elsődleges kulcs, a ProductID mellett a Northwind termékek emberbarát, egyedileg indexelt termékkóddal rendelkeznek. Az alkalmazottak általában nem elsődleges kulcsértékekre, hanem termékkódokra hivatkoznak. A termékkód egy összetett érték, amely egy Kategória megjelölésből és egy számból áll, például B-1 az "Ital" esetében, 1. termék. |
Termék neve, Termék leírása |
A rövid szöveges terméknevek mellett a termékekre hosszú szöveges leírás is vonatkozik. Ez az érték használható a katalógus leírásában vagy az ügyfelek kérdéseinek megválaszolására. |
Egységár |
Minden termékhez egységár tartozik, ami leegyszerűsíti az adatbázist a funkciók bemutatásaként. A legtöbb valós helyzetben a díjszabás gyakran jelentősen összetettebb. |
Lásd még