Databázové systémy 2 Cvičení č. 7 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.

Slides:



Advertisements
Podobné prezentace
Databázové systémy 2 Cvičení č. 8
Advertisements

Databáze Dotazy.
Databázové systémy 2 Cvičení č. 9 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Informační systémy Nástroje pro sběr dat, návrh a realizace databáze.
Databázové systémy 2 Zkouška :00. Příklad I Vytvořte proceduru ZK_TRPASLICI_PLNENI(datum_od VARCHAR2, datum_do VARCHAR2), která na standardní.
Výpočetní technika Akademický rok 2008/2009 Letní semestr Mgr. Petr Novák Katedra informatiky a geoinformatiky FŽP UJEP
Další dotazy SQL Structured Query Language. Některé SQL příkazy mohou mít v sobě obsaženy další kompletní příkazy SELECT. Využijeme je tam, kde potřebujeme.
Databázové systémy 1 Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 1 - řešení Cvičení č. 10 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Architektury a techniky DS Cvičení č. 4 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy 1 Cvičení č. 6 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 1 Cvičení č. 4 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 1 Cvičení č. 2 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 2 Cvičení č. 6 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 1 Cvičení č. 3 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 2 Cvičení č. 2 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Fakulta elektrotechniky a informatiky
Fakulta elektrotechniky a informatiky Univerzita Pardubice
Databázové systémy I Cvičení č. 9 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Databázové systémy 2 Cvičení V Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky
Databázové systémy 2 Zkouška – 8:00. Příklad I - Funkce Vytvořte funkci ZK_HR_ODDELENI (p_oddeleni_id NUMBER). Funkce vrátí řetězec, obsahující.
KIV/ZIS cvičení 6 Tomáš Potužák. Pokračování SQL Klauzule GROUP BY a dotazy nad více tabulkami Stáhnout soubor studenti_dotazy_sql.mdb.
MS ACCESS parametrický dotaz
Databázové systémy 1 Cvičení č. 9 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 2 Cvičení č. 4 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy I Cvičení č. 6 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Databázové systémy 2 Cvičení č. 6 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy II Přednáška č. X Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky
Fakulta elektrotechniky a informatiky
Fakulta elektrotechniky a informatiky
Databázové systémy 2 Zkouška – 08:00. Příklad I – Funkce – 4 body Vytvořte funkci F_ZK1(p_id_zamestnance NUMBER) RETURN VARCHAR2. Daná funkce.
Access Formuláře, cvičení
Databázové systémy 2 Zkouška :00. Příklad I IDAS2 – zkouška :00 2 Vytvořte proceduru ZK_TRP_PRODUKTIVITA(P_DATUM_OD IN VARCHAR2,
Databázové systémy II Přednáška V Ing. Tomáš Váňa, Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Architektury a techniky DS Cvičení č. 9 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy 2 Cvičení č. 10 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy 2 Zkouška – 08:00. Příklad I – Procedura – 5 bodů Vytvořte proceduru P_ZK3(p_oddeleni_id_from NUMBER, p_oddeleni_id_to NUMBER,
Databázové systémy II Cvičení č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy 2 Zkouška – 8:00. Příklad I - Procedura Vytvořte proceduru PROCEDURE ZK_ZAM_HISTOGRAM(P_ROK_OD IN NUMBER, P_ROK_DO IN NUMBER)
Databázové systémy I Cvičení č. 10 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Napište program v C pro výpočet plochy obdélníka se stranami A=3 a B=2. Výsledek vytiskněte s patřičným komentářem na obrazovku formátovým příkazem printf.
Databázové systémy 2 Zkouška – 8:00. Příklad I – Procedura – 5 bodů Vytvořte proceduru P_ZK4(p_oddeleni_id_from NUMBER, p_oddeleni_id_to NUMBER)
Databázové systémy 2 Zkouška – 12:00. Příklad I - Funkce Vytvořte funkci ZK_TRP_TREND(P_ID_TRPASLIKA IN NUMBER, P_DATUM_OD IN VARCHAR2, P_DATUM_DO.
Databázové systémy I Cvičení č. 7 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Databázové systémy 2 Zkouška – 8:00. Příklad I – Procedura – 5 bodů Vytvořte proceduru P_ZK2(p_table_name VARCHAR2, p_min_nuls NUMBER, p_drop.
PHP Souhrnné cvičení Mgr. Josef Nožička IKT PHP
Databázové systémy 2 Zkouška – 8:00. Příklad I - Funkce Vytvořte funkci ZK_TRP_TREND(P_ID_TRPASLIKA IN NUMBER, P_DATUM_OD IN VARCHAR2, P_DATUM_DO.
Databázové systémy 2 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
KIV/ZIS cvičení 4 Tomáš Potužák. Dotazy - úvod Umožňují pracovat s databází –Získávat specifické informace z tabulky, případně z více tabulek najednou.
Databázové systémy SQL Výběr dat.
Databázové systémy 2 Cvičení č. 4 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 2 Zkouška – 8:00. Příklad I - Procedura Vytvořte proceduru PROCEDURE ZK_ZAM_HISTOGRAM(P_ROK_OD IN NUMBER, P_ROK_DO IN NUMBER)
Databázové systémy 2 Cvičení IV Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky
Databázové systémy 2 Zkouška – 12:00. Příklad I - Funkce Vytvořte funkci ZK_IS_COLUMN_FK(P_TABLE_NAME IN VARCHAR2, P_COLUMN_NAME IN VARCHAR2)
DATABÁZOVÉ SYSTÉMY Ing. Roman Danel, Ph.D.
Databázové systémy 2 Zkouška – 8:00. Příklad I - Funkce Vytvořte funkci ZK_DIFF_MIN_MAX (P_ZAM_ID NUMBER) RETURN VARCHAR2. Funkce může vracet.
ACCESS TVORBA TABULEK, CVIČENÍ - 06 Ing. Jana Horáková IKT MS Office
ACCESS TVORBA TABULEK, CVIČENÍ - 05 Ing. Jana Horáková IKT MS Office
Databázové systémy 2 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Architektury a techniky DS Cvičení č. 6 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy 1 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2015.
2OP483 Manažerská informatika 3
KIV/ZD cvičení 5 Tomáš Potužák.
Vzorové řešení zápočtového testu
Algoritmizace a programování
NÁZEV ŠKOLY: Střední odborná škola Net Office, spol. s r. o
Databázové systémy a SQL
Transkript prezentace:

Databázové systémy 2 Cvičení č. 7 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice

Obsah cvičení -Práce s DBMS_OUTPUT. -Kurzory. -Procedury, funkce a balíčky. -Výjimky. Databázové systémy 2 – cvičení 7 2

3 Cvičení 7 – Příklad I -Vytvořte funkci cv7_pomer_plat(p_mzda NUMBER, p_oddeleni_id NUMBER) RETURN VARCHAR2; -Parametr p_oddeleni_id nastavte jako volitelný s defaultní hodnotou NULL. -Funkce vrátí řetězec (VARCHAR2), který procentuálně vyjádří výši mzdy zadané parametrem p_mzda k průměrnému platu: -A) Pokud nebude zadáno p_oddeleni_id, poměr se vypočítá z průměrného platu v celé organizaci. -B) Pokud bude p_oddeleni_id zadáno, poměr se počítá proti průměru platů na daném oddělení. -Využijte schématu A_HR, tabulka ZAMESTNANCI. -Příklad výsledku při použití funkce v dotazu:

Databázové systémy 2 – cvičení 7 4 -Vytvořte funkci cv7_vekova_skupina(p_datum DATE) RETURN VARCHAR2; -Funkce ze zadaného data narození určí, do které věkové skupiny daný člověk patří. Výstup se bude řídit následujícími pravidly: -0 – 18 let „Dítě“ -18 – 65 let „Dospělý“ „Důchodce“ -V případě jiné hodnoty se vypíše „Neznámá“ -Funkci můžete otestovat ve schématu A_CLOVEK. Cvičení 7 – Příklad II

Databázové systémy 2 – cvičení 7 5 -Vytvořte proceduru cv7_delete_script(p_schema VARCHAR2). -Procedura vypíše na standardní výstup skript, který bude možné použít pro smazaní všech tabulek ve schématu. Schéma bude reprezentováno parametrem p_schema. Pro nalezení tabulek použijte pohled ALL_TABLES. -Parametr p_schema nesmí být citlivý na velikost písma (case insensitive). -Ukázka výstupu: Cvičení 7 – Příklad III

Databázové systémy 2 – cvičení 7 6 Cvičení 7 – Příklad IV -Vytvořte balíček pck_cv7: -Balíček bude obsahovat následující funkce a procedury: -Funkce student_prumer(p_id_studenta NUMBER) RETURN NUMBER; -Funkce vypočte k zadanému studentovi jeho studijní průměr, založený na jeho známkách. Vypočtený průměr zaokrouhlí na 2 desetinná místa. -Pro tento příklad použijte schéma A_SKOLA.

Databázové systémy 2 – cvičení 7 7 Cvičení 7 – Příklad IV -Pokračování balíčku pck_cv7: -Vytvořte proceduru ucitel_seznam(p_id_ucitele NUMBER). -Procedura na základě zadaného parametru vypíše předměty vyučované daným vyučujícím spolu se seznamem studentů, jenž tento předmět navštěvují. -Výpis bude proveden na standardní výstup. -Spolu se studentem bude zobrazena i udělená známka. V případě že student dosud nebyl klasifikován, zobrazí se místo známky znak „X“. -Pokud bude zadáno id, které nepatří žádnému učiteli, procedura na výstup vypíše: „Nenalezen žádný vyučující.“. Ošetřete pomocí výjimky. -Na následujícím snímku naleznete vzorový formát výstupu.

Databázové systémy 2 – cvičení 7 8 Cvičení 7 – Příklad IV

Databázové systémy 2 – cvičení 7 9 -V balíčku pck_cv7 dále vytvořte: -Vytvořte funkci seznam_predmetu(p_id_studenta NUMBER) RETURN VARCHAR2; -Funkce vrátí pro zadaného studenta (reprezentovaného p_id_studenta) zřetězený seznam jeho předmětů spolu s informací o vyučujícím předmětu. -Formát: předmět1(Jmeno a Prijmeni vyučujícího); předmět2(vyučující);…. -Předměty ve výpise budou seřazeny vzestupně podle příjmení vyučujícího. -V případě, že student nemá zapsaný žádný předmět, zobrazí se text: „Student nemá zapsané žádné předměty. “ -Pro tento příklad použijte schéma A_SKOLA. Cvičení 7 – Příklad IV

Databázové systémy 2 – cvičení S pomocí funkce pck_cv7.seznam_predmetu vytvořte pohled cv7_student_predmety(jmeno VARCHAR2, predmety VARCHAR2), kde ve sloupci jmeno bude jméno a příjmení studenta a ve sloupci predmety bude výsledek funkce cv7_seznam_predmetu. -Příklad výstupu: Cvičení 7 – Příklad IV

Cvičení 7 – kontrola Všechny databázové objekty z tohoto cvičení vytvořte se svém schématu. Pro splnění cvičení je nutné, aby všechny objekty byly správně vytvořeny a funkční do půlnoci dne před následujícím cvičením. Databázové systémy 2 – cvičení 7 11