Hledej Zobraz: Univerzity Kategorie Rozšířené vyhledávání

12 659   projektů
0 nových

Minisbírka příkladů k předmětu Databázové systémy

«»
Přípona
.doc
Typ
studijní materiál
Stažené
3 x
Velikost
0,3 MB
Jazyk
český
ID projektu
7683
Poslední úprava
21.03.2016
Zobrazeno
1 184 x
Autor:
nella.grundzova
Facebook icon Sdílej na Facebooku
Detaily projektu
Popis:
1. Úvod

Sbírka je určena studentům oboru Manažerská informatika na Fakultě podnikatelské Vysokého učení technického v Brně. Slouží jako učební pomůcka, kterou je možné si personalizovat dle vlastního uvážení. Na jejím základě pak budou probíhat jednotlivá cvičení z předmětu, při nichž budou postupně řešeny dílčí kapitoly.

V následujících kapitolách si předvedeme základní operace s SQL příkazy nad jednoduchou databází. Pro úspěšné sestrojení příslušných SQL skriptů je nutná znalost odpovídajících teoretických partií databázových systémů.

K jednotlivým úkolům je posléze doporučeno doplnění odpovídajících skriptů pro řešení.

Klíčová slova:

databázové schéma

vytvořené tabulky

triggery

multidimenzionální kostka

absolventi



Obsah:
  • Obsah
    1. Úvod 1
    2. Databázové schéma 2
    2.1. Skripty pro vytvoření databáze a tabulek 2
    2.2. Naplnění vytvořených tabulek daty 4
    3. Zobrazení dat z vytvořených tabulek 7
    3.1. Vypište učitele, kteří vyučují předmety spolu s názvy vyučovaného předmětu (jméno, příjmení, název) 7
    3.2. Vypište učitele, kteří nevyučují žádný předmět (jméno, příjmení) 8
    3.3. Vypište body jednotlivých studentů předmetu s názvem „matematika“ (jméno, příjmení, body) 9
    3.4. Vypište všechny studenty, které máme v tabulce Student, těm studentům, kteří konali nějakou zkoušku současně vypište i název předmětu a body 10
    3.5. S využitím agregačních funkcí zjistěte počet hodnocení z jednotlivých předmětů (dle názvu), průměrný počet bodů, součet všech udělených bodů, minimum a maximum udělených bodů. 11
    3.6. Zobrazte průměrný, minimální a maximální počet bodů z jednotlivých předmětů pro každého studenta, který konal zkoušku, dále počet předmětů ze kterých byl bodován a současně vypište jeho příjmení 12
    3.7. Zobrazte celé jména učitelů (jméno a příjmení v jednom sloupci), kteří zapsali body studentům zobrazte také body, název předmetu a celé jméno studenta (jméno a příjmení v jednom sloupci) 13
    3.8. Upravte předcházející dotaz (3.7) tak, aby se zobrazila celá jména učitelů, kteří zapsali body studentům se jménem "Jarda" a zamezte výpisu duplicitních záznamů. 14
    4. Pohledy 15
    4.1. .Vytvořte pohled s názvem Prehled, který bude obsahovat celá jména učitelů (jméno a příjmení v jednom sloupci), kteří zapsali body studentům, včetně bodů, názvů předmětu a celých jmen studentů (jméno a příjmení v jednom sloupci) 15
    4.2. Který učitel známkoval, kolik bodů obdržel a z jakého předmětu student Novák 16
    4.3. který učitel známkoval, kolik bodů obdržel a z jakého předmětu student Novák a student Pořízek 17
    4.4. Kteří studenti obdrželi 60 a více bodů z matematiky a 20 a méně bodů z chemie 18
    5. Uložené procedury 19
    5.1. Vytvořte si tabulky student_zaloha a znamky_zaloha kam budete ukládat mazaná data.(nebude se zálohovat učitel, který známku vložil). 19
    5.2. Napište proceduru, která smaže studenta z tabulky student, současně smaže i všechny jeho body z tabulky známka a vytvoří zálohu. (vstupní parametr je identifikátor studenta). 19
    5.3. Napište proceduru, která bude vkládat nového učitele a předmět, který bude vyučovat. Např. vloz_vyucujiciho(‘Jan’, ‘Novák’, ‘Tělocvik’). Procedura zkontroluje, jestli se vyučující a předmět nachází v databázi, pokud ne, vloží je do příslušných tabulek. Poté vloží záznam do tabulky vyučující. 20
    5.4. Naprogramujte uloženou proceduru se jménem save_student, která bude mít dva vstupní parametry (jméno a příjmení) studenta a jeden výstupní parametr (jeho id). Procedura zjistí, zda se student s daným jménem a příjmením nachází v databázi,pokud ano, pouze vrátí jeho id a pokud ne, vloží jej a také vrátí jeho id. 21
    5.5. Naprogramujte analogickou proceduru save_ucitel1, která uloží učitele. Bude mít dva vstupní parametry (jméno a příjmení) učitele, dva výstupní parametry (id_ucitele, existuje). Dále bude obsahovat vnořenou proceduru Vypis. Procedura Vypis bude mít za úkol vypsat na základě hodnoty v parametru existuje text „Učitel s tímto jménem již existuje“ v případě, že hodnota je 0, text text „Učitel byl vložen s ID xx“, kde xx je konkrétní ID, se kterým byl vložen nový vyučující do tabulky v případě, že hodnota parametru existuje je 1. 22
    5.6. Dále naprogramujte proceduru save_hodnoceni, která bude mít 6 vstupních parametrů. Bude to jméno a příjmení učitele, jméno a příjmení studenta, název předmětu a počet bodů - číslo, které student z předmětu obdržel. Tato procedura využije uloženou proceduru save_student a uloženou proceduru uloz_hodnoceni, ve které je potřeba udělat jisté úpravy pro správné fungování všech tří procedur. Proceduru s úpravami uložte jako vloz_hodnoceni1. To znamená, že uložená procedura save_hodnoceni bude v sobě volat výše uvedené dvě procedury. Výsledkem uložené procedury save_hodnoceni je výpis ve tvaru: Student hodnocen známkou: z předmětu . Pokud už existuje hodnocení od daného učitele pro daný předmět a daného studenta, pouze vypíše, že známka již byla zadaná. 22
    6. Triggery 23
    6.1. Archiv změn známek 23
    6.2. Archiv mazaných známek 25
    6.3. Pohled změn známek 26
    6.4. Trigger pro absolventy předmětů 27
    7. Databázový kurzor v proceduře 28
    8. Multidimenzionální kostka 30