Jazyk SQL – multiplatformový kurz

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