Databaz 8.1.1999 Priklad 1. Nasledujuca schema je fragment univerzitnej databazy. Schema: studenti(#cs,meno,priezvisko,rc,adresa,mesto) prednasajuci(#cp,meno,priezvisko,titul,rc,adresa,mesto) predmety(#op,nazov,sylabus) predpoklady(#op1 predmet, #op2 predpoklad) kurzy(#ck,#op,#cp,rok,semester) skusky(#id,#ck,#cs,datum,hodnotenie) Formulujte nasledujuce dotazy v relacnej algebre, v domenovom relacnom kalkule a v jazyku SQL. Najdite predmety (#op,nazov), ktore su najoblubenejsie podla kriteria: 1.-> V poslednom roku ziaden student neopakoval skusku. 2.-> Urobilo z neho za posledne tri roky skusku najviac studentov. 3.-> Ma najlepsi priemer hodnotenia (neuvazujuc opakovane skusky) v tomto semestri. {student spravil skusku ak znamka z nej je 1,2,3 (teda nevyhovel ak dostal 4-ku)} Priklad 2. Upravte nasledujucu schemu ABCDEFGH do 3NF nelamajucej zavislosti a BCNF, ked platia zavislosti: DFH --> ABG G --> ABC C --> DGH Priklad 3. Navrhnite databazu (relacnu schemu) clenov vedeckej spolocnosti (JSMF). Treba zaznamenat domace adresy, adresy do zamestnani. (Clen moze mat viacero zamestnani.) Za kazdy rok treba evidovat aj zaplatenie clenskeho. Hlavnou cinnostou vedeckych spolocnosti je publikovanie (pisanie clankov). Clanky vychadzaju v casopisoch, ktore vydavaju vydavatelia. Clanky sa cituju: zoznam autorov, nazov clanku, nazov casopisu, rocnik, cislo a strany. Dolezite je aj mesto a stat, kde casopis vysiel. Na niektorych clankoch sa moze podielat cely kolektiv autorov. Ine clanky maju aj niekolko pokracovani. Obvykle clanok moze byt publikovany v jedinom casopise, ale su aj vynimky. V databaze je potrebne evidovat casopisy a vydavatelov. Niektori vydavatelia vydavaju aj viac casopisov. Hodnoti sa vystiznost popisu, uspornost (bez redundantnosti) navrhu a prehladnost (nazornost) zapisu vsetkych skutocnosti. ------------------------------------------------------------------------- Pisomku vidite, spravte s tym co uznate za vhodne (ono vacsinou je to cele vlastna tvorba (hlavne 3. uloha)). Problemy su s relacnou algebrou v 1. ulohe. Este furt sme neprisli na to ci sa da group by zapisat pomocou relacnej algebry. Asi ani nie. Na ustnej skuske sa ma Sturc spytal na funkcne zavislosti a multizavislosti v relaciach. V pohode, ale ini dostali napriklad preklad DATALOG-ovskeho programu a ako to funguje, Tarskeho veta o pevnom bode, zadefinovat pojmy relacnej algebry, kompresia, normalizacia, seriovatelnost, fyzicka reprezentacia dat a podobne. V niektorych veciach sa az neprijemne moc vrta (napr. DATALOG), pripadne casto chce chlapik presne definicie a zapisy.