Relační model je nejoblíbenější z logických datových modelů a je základem databází SQL.
Relační model je založen na dvou jednoduchých konceptech:
- tabulky
- vztahy
Relační model pochází z roku 1969 a je dílem Edgara F. Codda, anglického počítačového vědce. Přestože jsme jako počítačoví programátoři zvyklí se zvědavostí dívat na nové lesklé věci, technologie, která může být ústředním bodem všeho kolem počítačů po dobu 50 let, rozhodně stojí za studium.
Díky tomu, že je model založen na tabulkách, je použití velmi intuitivní, protože jsme zvyklí používat tabulky k uspořádání věcí. Vzpomeňte si například na excelovou tabulku.
S databázemi založenými na SQL, jako je PostgreSQL, Oracle, MySQL, SQLite a MS SQL Server a mnoha dalšími, lze data analyzovaná pomocí ER modelu modelovat pomocí relačního modelu a téměř okamžitě je transformovat do formátu databáze SQL, který může být považován za implementaci relačního modelu v reálném světě, ale o tom si povíme v jiných příspěvcích.
V tomto příspěvku chci hovořit o teorii a konceptech, na kterých je relační model založen, nikoli vyjádřeno matematicky, ale co to znamená v praxi.
Pokud jste student, možná zjistíte, že to, co zde píšu, není to, co je napsáno ve vaší učebnici, ale možná si to můžete přečíst snadněji, abyste pochopili formálnější pojmy vyjádřené ve vašem učebním materiálu.
Tabulky
V relačním modelu tabulka je sbírka položek.
Je uspořádán do řádků a sloupců:
Jméno | Věk |
---|---|
Flavio | 36 |
Roger | 7 |
Syd | 6 |
Nice
Každý záznam v tabulce se nazývá n-tice . Můžete také použít výrazy záznam nebo řádek .
N-tice představuje řádek tabulky, jako je tento:
Flavio | 36 |
Atributy
Atribut je jedna jediná položka v n-tici.
V tomto příkladu:
Flavio | 36 |
„Flavio“ je atribut. 36 je další atribut.
Nice jsou jedinečné
Každá n-tice v tabulce je jedinečná.
V relačním modelu nemůžeme mít duplicitní data, což znamená, že každý řádek v tabulce se musí lišit alespoň v jednom atributu.
Klíč vztahu
Věc, která zajišťuje, že n-tice je jedinečná, je klíč vztahu .
Klíč je jeden atribut, který musí jedinečně identifikovat n-tice.
Pokud je klíč vztahu sada atributů, musí být neredundantní . To znamená, že pokud odstraníme jeden z atributů klíče, klíč nemůže zaručit jeho jedinečnost.
Pokud lze určit více než jeden klíč, jeden z těchto klíčů bude identifikován jako primární klíč .
Omezení integrity klíče
Klíčový atribut (atributy) jakékoli n-tice v tabulce nesmí nikdy být null a nesmí se nikdy opakovat .
Daný klíč, musíme být schopni ukázat na konkrétní n-tici/řádek bez dvojznačnosti.
Omezení domény
Každý atribut má pravidla, jakou hodnotu může mít .
Pokud se rozhodneme ukládat čísla, nemůžeme ukládat například řetězce. A můžeme se rozhodnout neukládat řetězce delší než 10 znaků pro názvy.
Tento typ můžeme také nazvat .
Omezení referenční integrity
Pokud tabulka obsahuje odkaz na sekundární tabulku nebo jiné n-tice ve stejné tabulce, pak musíme dodržovat pravidla, která zabraňují přerušení odkazu.
Zejména se musíme vyvarovat porušení odkazu:
- vyhnout se smazání nebo úpravě primárního klíče záznamu, na který odkazujeme, v druhé tabulce.
- nevkládejte nový záznam s neexistujícím klíčem, na který by odkazoval v druhé tabulce.
- neměňte klíč záznamu, na který odkazujeme, aniž byste se ujistili, že nový klíč existuje v druhé tabulce.
DBMS (Systém správy databáze) zavede opatření, která nám pomohou implementovat referenční integritu.