Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Tu je návod, ako reprezentujete vzťahy medzi entitami v ERDS spolu so zodpovedajúcou implementáciou databázy:
1. Entity:
* Reprezentácia: Obdĺžniky. Každý obdĺžnik predstavuje entitu (vec alebo koncept) ako „zákazník“, „objednávka“, „produkt“.
* implementácia databázy: Tieto sa stávajú tabuľkami vo vašej databáze. Každá tabuľka obsahuje stĺpce (atribúty), ktoré predstavujú vlastnosti entity.
Príklad:
`` `
+---------++-----------+
| Zákazník | | Objednávka |
+---------++-----------+
| Vládca | | OrderID |
| Názov | | Vládca |
| Adresa | | Orderdate |
+---------++-----------+
`` `
2. Atribúty:
* Reprezentácia: Ovaly pripojené k obdĺžniku predstavujúceho entitu. Tieto opisujú vlastnosti entity (napr. „Name“, „Adresa“, „OrderID“, „Orderdate“). Môžete tiež uviesť typy údajov (napr. `Int`,` varchar`, `dátum").
* implementácia databázy: Tieto sa stávajú stĺpcami v príslušných databázových tabuľkách. Typ údajov v oválnych mapách do typu dát stĺpca v databáze.
3. Vzťahy:
* Reprezentácia: Čiary spájajúce obdĺžniky entity. Typ riadku a súvisiace symboly označujú typ vzťahu:
* One-to-one (1:1): Jedna inštancia jednej subjektu súvisí s väčšou inštanciou inej entity (napr. Osoba a ich pas). Často predstavuje čiaru s „1“ na každom konci alebo niekedy špeciálnou notáciou ako čiara končiaca v diamante na jednej strane.
* jeden do človeka (1:m) alebo veľa na jeden (m:1): Jedna inštancia entity súvisí s mnohými prípadmi inej entity (napr. Jeden zákazník môže mať veľa objednávok). Reprezentované riadkom s „1“ na jednom konci a „M“ (alebo v Crows Foot Notácia - symbol s tromi hrotmi) na druhej strane.
* Mnoho-to-many (m:n): Mnoho prípadov jednej subjektu súvisí s mnohými prípadmi iného subjektu (napr. Mnoho študentov môže absolvovať mnoho kurzov). Predstavuje riadok s „M“ na oboch koncoch. Zvyčajne to vyžaduje pri implementácii databázy tabuľku na spojitosť (alebo tabuľku mostov).
Príklad:Jedna-to-many (zákazník na objednávky)
`` `
+---------+-------------
| Zákazník | |
+---------+-------------
| Vládca | 1 |
| Názov | |
| Adresa | ------------- | M
+ ---------+ |
|
Vložka
+-----------+
| Objednávka |
+-----------+
| OrderID |
| Vládca |
| Orderdate |
+-----------+
`` `
Príklad:Mnoho ľudí (študenti a kurzy)
`` `
+---------++-----------+
| Študent | | Kurz |
+---------++-----------+
| Studid | -------- M | CourseID |
| Názov | | | Názov |
+ ---------+ | +-----------+
|
| M -------- 1
Vložka
+-------------------+
| Študentský
+-------------------+
| Studid |
| CourseID |
+-------------------+
`` `
4. Kardinalita a účasť:
* kardinalita: Počet prípadov jednej entity, ktoré môžu súvisieť s inou (reprezentovanou „1“ alebo „M“).
* Účasť: Či je účasť na vzťahu povinná alebo voliteľná (uvedená v niektorých zápisoch ERD s rôznymi symbolmi na riadkoch, ako je napríklad kruh pre voliteľné).
implementácia databázy (príklad SQL):
Pre príklad zákazníka (1:m) by ste vytvorili dve tabuľky:
`` sql
Vytvorte zákazníka tabuľky (
Custid int Primárny kľúč,
Názov Varchar (255),
Adresa varchar (255)
);
Vytvorte objednávku tabuľky (
Primárny kľúč ORDID INT,
Custid int,
Dátum objednávky,
Referencie cudzieho kľúča (Custid) REFERENCIE Customer (Custid)
);
`` `
Obmedzenie „cudzieho kľúča“ v tabuľke „Order“ presadzuje vzťah. Každý `orderID` má jeden` custid` a že „custid` musí existovať v tabuľke„ zákazníka “.
Napríklad by ste mali tri tabuľky (študenti, kurzy a študentské témy). Tabuľka „StudentCourse“ je stôl križovatky/most, ktorý spája študentov s kurzami.
Stručne povedané, vytvoríte ERD vizuálne, aby ste navrhli svoju databázu a zobrazovali entity, atribúty a vzťahy. Potom preložíte tento vizuálny model do skutočnej schémy databázy pomocou SQL (alebo iného jazyka databázy) na vytvorenie tabuliek, definovanie stĺpcov a nastavenia obmedzení na presadzovanie vzťahov. Mnoho nástrojov na návrh databáz pre vás vygeneruje SQL priamo z ERD.