Cvičení 1
Kino
Co si vyzkoušíte
Kino prodává vstupenky přes web a jeho datový model máte na obrázku. Nejdřív ho přečtete a popíšete, potom do něj doplníte, co kino nově potřebuje. Stačí papír nebo textový editor.
Zadání
- Popište každou tabulku jednou větou: co znamená jeden její řádek?
- U každé tabulky vypište primární klíč a cizí klíče. U cizích klíčů napište, na kterou tabulku ukazují.
- Každou čáru v modelu přečtěte jako větu oběma směry, stejně jako ve výkladu.
- V modelu je schovaná vazba M:N, i když u žádné čáry není M ani N na obou koncích. Mezi kterými tabulkami je a která tabulka je spojovací?
- Kino chce u filmů zobrazovat herce. Herec hraje ve víc filmech a ve filmu hraje víc herců. Doplňte do modelu nové tabulky a zapište je zkráceně jako ve výkladu.
- Web nejčastěji vypisuje představení na zvolený den a zákazníci se přihlašují e-mailem. Na které sloupce byste přidali index? A proč ne na
seat?
Bonus
- Do herecké vazby z kroku 5 chce kino zapsat i jméno postavy, kterou herec ve filmu hraje. Do které tabulky ho dáte?
- Jedno sedadlo se na jedno představení nesmí prodat dvakrát. Jak to může hlídat databáze sama, a ne až aplikace?
- Sál má sedadla v řadách. Navrhněte tabulku
seatstak, aby vstupenka odkazovala na konkrétní sedadlo v konkrétním sále. Jak se tím změní tabulkatickets?