Vstupné požiadavky: základy správy serverov, aspoň teoretické základy databáz
Cieľ kurzu: Kurz je určený pre vývojárov, začínajúcich programovať priamo alebo nepriamo pre niektorý databázový systém. Naučia sa v ňom, aké sú hlavné možnosti práce s dátami v databázach, ako písať bezpečné a efektívne dotazy, a ako ladiť komplexný kód v prípade problémov. Ďalej sa naučia, ako odchytávať a ošetrovať vzniknuté chyby, a ako zabezpečiť logickú integritu dát. Na záver dostanú úvod do pokročilejších možností práce s dátami, ako sú skórovanie dát, užívateľské funkcie, triggre a stored procedúry. Na kurze použijeme databázové systémy MS SQL Server, Oracle a MySQL.
Trvanie: 2 dni
Obsahová náplň:
Úvod do databáz
- Nástroje na správu a vývoj databáz
- Komponenty a objekty databáz
- Vytváranie tabuliek a dátové typy stĺpcov
Použitie príkazu SELECT
- Základná syntax a použitie
- Filtrovanie údajov pomocou WHERE
- Zoraďovanie výsledkov pomocou ORDER BY
- Používanie aliasov pre tabuľky a stĺpce
- Používanie výrazov a operátorov
- NULL hodnota a práca s NULL hodnotami
- Eliminácia duplicitných záznamov
- Obmedzovanie množstva vrátených záznamov pomocou TOP/LIMIT/ROWNUM
- Zoskupovanie údajov pomocou GROUP BY
- Filtrovanie zoskupených údajov pomocou HAVING
- Základné agregačné funkcie
- Príkaz SELECT INTO
- Dopad dotazov na výkon servera
Príkazy INSERT, UPDATE a DELETE
- Základná a rozšírená syntax
- Klauzula OUTPUT / RETURNING
Spájanie dát z viacerých tabuliek
- Joiny – INNER JOIN, LEFT a RIGHT JOIN, FULL JOIN, CROSS JOIN
- Joinovanie tabuliek samých so sebou
- UNION, EXCEPT, INTERSECT, MINUS
Vnorené dotazy (subqueries)
- Úvod do vnorených dotazov
- Použitie vnorených dotazov vo výrazoch a ako odvodené tabuľky
- Použitie operátorov IN a EXISTS
- Prepojené vnorené dotazy (correlated subqueries)
Premenné a práca s nimi
- Skalárne premenné
- Tabuľkové premenné
- Dočasné tabuľky vs. tabuľkové premenné
- Konverzia dátových typov
Príkazy kontroly toku dát
- Vetvenie príkazov cez IF a ELSE
- Cykly pomocou WHILE
- Príkaz CASE
Zabezpečenie dátovej integrity
- Obmedzenia na vkladané hodnoty – NULL a NOT NULL, constraints
- Predvolené hodnoty
- Unikátne hodnoty
- Identita a jej automatické generovanie
- Referenčná integrita – cudzie kľúče
Spracovanie chýb
- Spracovanie chýb v SQL Serveri, Oracle a MySQL
- Debugovanie skriptov
Ladenie výkonu dotazov
- Exekučné plány
- Využitie indexov
- Ako pracuje cache DB servera
Skórovanie dát
- Windowing a window partitioning
- Funkcia ROW_NUMBER
- Funkcie RANK a DENSE_RANK
- Funkcia NTILE
Úvod do pokročilého programovania
- Užívateľské funkcie
- Základy stored procedúr
- Základy triggrov