Cvičení 4
Témata
- Relační algebra
- Relační dělení jako odvozená operace
- Klíče:
- primární (PRIMARY)
- alternativní (UNIQUE)
- cizí (FOREIGN)
- CASCADE a RESTRICT
- DROP TABLE
- ON UPDATE, ON DELETE
- Další poznámky:
- Vlastnosti klíčů
- Integrita databáze, omezení
Úkoly
- Máte k dispozici tabulky pet_owner a animal. Napište dotaz, který modeluje relační dělení pet_owner relací animal. Jaký význam má výsledek?
- Zkuste svůj návrh STAGu z minula (pokud jej nemáte, navrhněte) doplnit o vhodná integritní omezení a klíče.
- Ověřte svůj návrh integritních omezení pokusem o přidání různých nesprávných n-tic.
- Navrhněte vhodné tabulky s vhodnými integritními omezeními a cizími klíči pro následující data (ve skriptu, budete jej spouštět a upravovat vícekrát):
- Tabulka adresa:
- Ulice
- Číslo popisné
- Město
- PSČ
- Tabulka zákazník:
- Jméno
- Adresa
- Tabulka objednávka:
- Číslo objednávky
- Zákazník
- Datum
- Vyřízena (True/False)
- Tabulka zboží:
- Název
- Cena
- Počet kusů skladem
- Tabulka položka objednávky:
- Zboží
- Počet kusů
- Tabulka adresa:
- Do databáze z příkladu 4 vložte nějaká data (ve skriptu - budete je vkládat vícekrát).
- Zkuste postupně ve (vždy nově vytvořené) instanci databáze z příkladu 4:
- smazat/upravit nějaká data s CASCADE a s RESTRICT. Zjistěte, co se v databázi stane.
- zrušit nějakou tabulku s CASCADE a s RESTRICT. Zjistěte, co se v databázi stane.