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

Slides:



Advertisements
Podobné prezentace
Databáze Dotazy.
Advertisements

Počítače a programování 1 Přednáška 13 Jiří Šebesta.
Databázové systémy 2 Cvičení č. 9 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databáze.
Fakulta elektrotechniky a informatiky
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í.
Databázové systémy 1 Cvičení č. 8 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
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 II Přednáška č. 6 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
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í č. 7 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 2 Cvičení č. 2 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Fakulta elektrotechniky a informatiky
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.
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.
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
Pole Arrays.
Aplikační a programové vybavení
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.
Průměr Maximum Minimum
Databázové systémy 2 Cvičení č. 4 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
 Agregační funkce  Agregační funkce jsou to funkce, které nějakým způsobem zpracují více hodnot a jako výsledek vrátí hodnotu jednu COUNT()  Funkce.
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 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
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.
KIV/ZD cvičení 8 Tomáš Potužák.
KIV/ZD cvičení 5 Tomáš Potužák.
Vzorové řešení zápočtového testu
Informatika pro ekonomy přednáška 8
Databázové systémy a SQL
Číslo projektu školy CZ.1.07/1.5.00/
Databázové systémy a SQL
Databázové systémy a SQL
Algoritmizace a datové struktury (14ASD)
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o., Orlová-Lutyně
Transkript prezentace:

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

Obsah cvičení -PL/SQL - Funkce a procedury. IDAS2 - Cvičení IV 2

3 Cvičení 4 – Příklad I -Vytvořte proceduru CV4_NASTAV_PLATY, která vloží záznamy do tabulky cv4_trpaslici_plat(id_trpaslika NUMBER(2,0),plat NUMBER(8,2)), kterou si vytvoříte ve vašem schématu. -Tabulka cv6_trpaslici_plat bude obsahovat kromě identifikátoru trpaslíka i jeho vypočtený plat. Plat bude vypočten tak, že za každý skutečně vytěžený kg v období – obdrží trpaslík 1,25 zlaťáku. Výjimkou jsou trpaslíci, jejichž výška je méně než 110 cm, ti obdrží paušálně navíc 30 zlaťáků. Pro naplnění tabulky využijte explicitního kurzoru. Kromě toho procedura navíc vypíše na výstupní zařízení informaci o tom, kolik bylo trpaslíkům celkem vyplaceno. -Viz ukázka: Výdaje: 4323,75 A_O_SNEHURCE

IDAS2 - Cvičení IV 4 Cvičení 4 – Příklad II -Vytvořte proceduru CV4_TRPASLIK_VLASTNOSTI. -Procedura bude vkládat záznamy do tabulky CV4_TRPASLICI_VLASTNOSTI(jmeno VARCHAR2(20), vlastnosti VARCHAR2(100)), kterou si vytvoříte ve vlastním schématu. Pro každého trpaslíka vznikne v tabulce jeden záznam (i kdyby žádné vlastnosti trpaslík neměl), který bude obsahovat jeho jméno a zřetězený seznam vlastností oddělený středníkem (vlastnost1;vlastnost2;…;). -Pro naplnění tabulky využijte implicitní kurzory. -Příklad z naplněné tabulky: A_O_SNEHURCE

IDAS2 - Cvičení IV 5 Cvičení 4 – Příklad III -Vytvořte proceduru CV4_TRPASLICI_ZEBRICEK. -Procedura CV6_TRPASLICI_ZEBRICEK (OD VARCHAR2, DO VARCHAR2) vypíše (na standardní výstup) žebříček nejvýše tří trpaslíků, kteří v zadaném období (parametry od, do) vytěžili absolutně nejvíce rudy. -Parametry od, do zadejte pomocí řetězce, jejich převod na datový typ DATE realizujte až uvnitř procedury. -Na prvním řádku výstupu uveďte, za jaké období je žebříček sestaven. Formát: Výpis za období od - do: -Dále bude následovat samotné pořadí trpaslíku. Vždy se objeví maximálně 3 trpaslíci. Viz ukázka na následujícím snímku. A_O_SNEHURCE

IDAS2 - Cvičení IV 6 Cvičení 4 – Příklad IV

IDAS2 - Cvičení IV 7 -Vytvořte proceduru cv4_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. -Parametr p_schema nesmí být citlivý na velikost písma (case insensitive). -Skript bude seřazen vzestupně podle názvu tabulky. -Ukázka výstupu: Cvičení 4 – Příklad IV

IDAS2 - Cvičení IV 8 Cvičení 4 – Příklad V -Vytvořte funkci cv4_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: A_HR

IDAS2 - Cvičení IV 9 -Vytvořte funkci cv4_vekova_skupina(p_datum DATE) RETURN VARCHAR2; -Funkce ze zadaného data narození učí, 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í 4 – Příklad VI A_CLOVEK

Schéma A_CLOVEK IDAS2 - Cvičení IV 10

Schéma A_HR IDAS2 - Cvičení IV 11

Schéma A_O_SNEHURCE IDAS2 - Cvičení IV 12