3. odovzdávanie zadania

Ciele
  1. Odovzdať zadanie.
Úvod
    Na tomto cvičení potrebuješ odovzdať zadanie a ak na to máš právo, mal by si dostať zápočet.
Postup
  1. Toto posledné odovzdávanie zadania zahŕňa:
    • entitno-relačný model domény (z minulej odovzdávky, v prípade chýb opravené),
    • logický relačný model (z minulej odovzdávky, v prípade chýb opravené),
    • SQL DDL skript na vytvorenie databázy (vrátane sekvencie na autoinkrementáciu primárnych kľúčov) (z minulej odovzdávky, v prípade chýb opravené),
    • skript na naplnenie databázy (sekvencia INSERT príkazov) tak, aby každá tabuľka mala aspoň 5 zmysluplných záznamov (inšpiruj sa reálnym svetom) (z minulej odovzdávky, v prípade chýb opravené),
    • skript na vytvorenie 7 pohľadov, kde každý pohľad bude obsahovať aj komentár v prirodzenej reči vo forme úlohy (napr. 'Nájdi všetkých používateľov s krstným menom Milan') (z minulej odovzdávky, v prípade chýb opravené):
      • 2 pohľady s jednoduchým netriviálnym selectom nad jednou tabuľkou,
      • 3 pohľady so spájaním tabuliek (1x spojenie aspoň 2 tabuliek, 1x spojenie aspoň 3 tabuliek, 1x outer join),
      • 2 pohľady s použitím agregačných funkcií a/alebo zoskupenia
      ; snaž sa navrhnúť úlohy/pohľady tak, aby v danej doméne poskytovali nejakú zaujímavú odpoveď, napr. pri cestovných poriadkoch DPMK môžeme hľadať najbližší autobus linky 72 na zástavke Mier smerom na Lingov, ak je aktuálny čas napr. 13:33 (situácia, v akej sa človek môže ľahko vyskytnúť).
    • skript na vytvorenie ďalších 3 pohľadov, kde každý pohľad bude obsahovať aj komentár v prirodzenej reči vo forme úlohy:
      • 1 pohľad s použitím množinových operácií,
      • 2 pohľady s použitím vnorených poddopytov.
    • skript na vytvorenie triggeru/triggerov, ktoré budú implementovať autoinkrementáciu umelých kľúčov - pri vkladaní do tabuliek nastavia hodnotu id vkladaného prvku na ďalšiu hodnotu zo sekvencie, čím zabezpečia, že používateľ DB nemusí pri vkladaní údajov zadávať id (to je generované tým triggerom).
    • skript na aspoň jeden zmysluplný triger (okrem triggerov na autoinkrementáciu). Buď nájdi v doméne zadania nejakú úlohu, ktorú môže trigger vykonávať, alebo napíš trigger/triggery, ktoré umožnia editovať aspoň jeden z pohľadov, ktorý si doteraz vytvoril (pozor, vyber pohľad, ktorý nie je inherentne editovateľný, tzn. že bez vytvorenia triggerov do neho nevieš vkladať hodnoty, ani používať update).
    Pripomínam, že máš mať buď na školskom serveri, resp. u seba na notebooku, databázu nahodenú a pripravenú na ukážku.
Doplňujúce úlohy
    Úloha:

    Chinook

    Nájdi manažérov tých zamestnancov, ktorý poskytovali podporu zákazníkom z Brazílie. Zapíš dopyt v SQL
    Úloha:

    Chinook

    Použitím SQL vypíš mená a krajiny pôvodu tých zákazníkov, o ktorých sa starajú zamestnanci, ktorí boli prijatí do práce (HireDate) keď mali menej ako 35 rokov.
    Úloha:

    Chinook

    Použitím SQL vypíš mená tých zákazníkov, ktorí žijú v rovnakom meste (City) ako najvyšší manažér (nad ním už žiaden manažer nie je).
comments powered by Disqus