Třídní chat
Workspace
Popis
Na této stránce si můžeme vyzkoušet, jak fungují systémy, které pracují se sdílenou databází běžící v cloudu (na serveru). Naše aplikace představuje třídní chatovací místnost. V pravé části vidíte, jak by se chat zobrazoval na webové stránce. Ale v této části není možné do chatu přidat zprávu ani není možné zprávu ohodnotit. Obyčejně by pod seznamem zpráv bylo textové pole a tlačítko pro vložení zprávy. Po kliku na ikonu liku, by se počet liků zvednul o jeden. Tyto funkcionality zapomněli programátoři doprogramovat, ale nám to nevadí, protože máme možnost databázi ovládat ručně přes SQL a DML. Tyto příkazy jsme schopni volat v levé části okna. Databázové schéma vypadá následovně.
Databázové schéma
Schéma je velice jednoduché. V tabulce uzivatel se ukládají uživatelé systému. Tabulka zprava se napojuje na uživatele (autora příspěvku) přes cizí klíc ve sloupečku uzivatel_id. Každá zpráva má svůj text a datum, kdy byla vytvořena. Dále máme seznam typů reakcí, které můžeme k příspěvku přidat - tabulka typ_reakce. A poslední tabulka reakce je vazební tabulka mezi ostatními tabulkami a eviduje, který uživatel na kterou zprávu jak reagoval.
|
|
|
|
Zadání
Pomocí DML se pokuste do chatu vložit příspěvek a přidat reakci na cizí příspěvky.
-
Nejdříve si založte vlastního uživatele přidáním záznamu do tabulky uzivatel.
-
Pak pod tímto uživatelem založte zprávu vložením záznamu do tabulky zprava.
-
Pomocí tlačítka obnovit v pravé horní části okna se přesvědčte, že se zpráva do DB uložila správně a všichni účastníci chatu ji mohou vidět.
-
Pak si z nějakých zpráv od svých spolužáků vyberte tu, která se vám nejvíce líbí (nelíbí) a tu pomocí vložení záznamu do tabulky reakce ohodnoťte. Pozor: každý uživatel může ohodnotit každou zprávu pouze jednou. Jak je tato podmínka zajištěna?
-
Můžete také zkoušet reakce a zprávy smazat, ale buďte ohleduplní. Všechna data sdílíte se svými spolužáky.
-
Nyní zkuste napsat dotaz tak, aby se tabulka zobrazovala se stejnými daty, jak je vidět v pravé části obrazovky - samozřejmě bez obrázků reakcí - budou stačit pouze počty.
Zobrazení
| ID | Datum | Autor | Zpráva | Akce |
|---|