Kurz je určen pro vývojáře, kteří se chtějí detailně seznámit s možnostmi programování databází v Microsoft SQL Serveru a to od vytvoření databáze, správného návrhu tabulek až po tvorbu velmi pokročilých objektů a indexů. U úvodu kurzu se [...]
  • GOC632
  • Délka 5 dní
  • 50 ITK bodů
  • 9 termínů
  • ČR (36 200 Kč)

    SR (1 380 €)

  • Mírně pokročilý

Kurz je určen pro vývojáře, kteří se chtějí detailně seznámit s možnostmi programování databází v Microsoft SQL Serveru a to od vytvoření databáze, správného návrhu tabulek až po tvorbu velmi pokročilých objektů a indexů. U úvodu kurzu se naučíte navrhovat schéma databáze a následně vytvářet databázové tabulky, včetně vhodného vynucení integrity ukládaných dat. Dále se dozvíte, jak vytvářet databázové pohledy, uložené procedury, funkce a triggery. Stranou nezůstane ani úvod do monitoringu a optimalizace výkonu vaší databáze (pokud je ladění výkonu váš hlavní cíl, doporučujeme kurz GOC631). Získané znalosti si vyzkoušíte na řadě praktických úkolů a jsou uplatnitelné na všechny podporované verze SQL Serveru (2012-2019) včetně cloudové varianty Azure SQL Database.

»
  • Seznámíte se s platformou Microsoft SQL Server a nástroji, které využíváme pro vývoj databází
  • Naučíte se navrhovat schéma databáze a vytvářet databázové tabulky
  • Dozvíte se, jak vhodně vynutit integritu uložených dat s pomocí integritních omezení
  • Vyzkoušíte si vytvářet databázové pohledy
  • Naučíte se programovat uložené procedury
  • Dozvíte se, jak vytvořit a využít vlastní uživatelsky definované funkce
  • Naučíte se vytvářet různé typy triggerů
  • Seznámíte se s možnostmi zabezpečení databáze z pohledu vývojáře
  • Vyzkoušíte si monitorovat náročné databázové dotazy ve vaší databázi
  • Zjistíte, jak správně navrhovat indexy a kdy a proč se vaše indexy nepoužijí
  • Seznámíte se s možnostmi columnstore indexů a naučíte se je používat v datových skladech i OLTP aplikacích
  • Představíme si technologii In-Memory OLTP a vysvětlíme si, kdy je výhodné ji využít
  • Dozvíte se, jak funguje transakční zpracování v SQL Serveru, jaké jsou vlastnosti transakcí, jak fungují zámky a jaký dopad na výkon mají izolační úrovně

Kurz je cílen na databázové vývojáře, kteří se chtějí detailně seznámit s možnostmi programování databází v Microsoft SQL Serveru nebo v Azure SQL Database.

  • Znalost prostředí Microsoft SQL Serveru a jazyka T-SQL na úrovni kurzu GOC 278
1 Úvod do vývoje databází
  • Představení platformy Microsoft SQL Server
  • Seznámení s nástroji pro vývoj databází
  • Představení nejčastějších úkolů spojených s vývojem databází
2 Návrh a nasazení tabulek
  • Seznámení s principy návrhu relačních databází
  • Modelování schématu databáze s využitím ER diagramu
  • Vysvětlení principu normalizace schématu relační databáze
  • Představení dostupných datových typů
  • Seznámení se schématy
  • Ukázka vytvoření databázové tabulky
  • Vysvětlení možností úprav existující tabulky
  • Ukázka práce s dočasnými tabulkami
  • Představení historických tabulek, které automaticky verzují své změny
3 Zajištění datové integrity
  • Představení způsobů zajištění datové integrity a validace dat
  • Vysvětlení použití primárního a cizího klíče
  • Použití check constraints
4 Implementace a použití databázových pohledů
  • Vysvětlení principů použití a tvorby databázových pohledů
  • Ukázka implementace databázového pohledu
  • Vysvětlení výkonnostního dopadů databázových pohledů a tvorba indexovaného pohledu
5 Implementace a použití uložených procedur
  • Seznámení s implementací a vhodným použitím uložených procedur
  • Práce s vstupními i výstupními parametry uložené procedury
  • Ošetření výjimek při běhu uložené procedury
  • Předání tabulkového parametru uložené proceduře
6 Implementace a použití uživatelsky definovaných funkcí
  • Představení různých typů uživatelsky definovaných funkcí
  • Vysvětlení rozdílů mezi inline a multi-statement tabulkovými funkcemi a jejich dopad na výkon dotazů
  • Ukázka implementace vlastní tabulkové a skalární funkce
7 Implementace a použití triggerů
  • Seznámení s DML triggery a jejich použitím
  • Porovnání AFTER a INSTEADOF DML triggerů a ukázky jejich vhodného použití
  • Ukázka implementace DDL triggerů
8 Implementace databázových objektů v managed code (.NET)
  • Představení možností a omezení integrace .NETu do Microsoft SQL Serveru
  • Vysvětlení principů implementace uložených procedur a funkcí v .NETu
  • Nasazení .NET kódu do databáze
9 Zabezpečení databáze
  • Vysvětlení klíčových principů bezpečnostního modelu Microsoft SQL Serveru
  • Zabezpečení přístupu k databázovým objektům
  • Práce s databázovými rolemi
  • Vysvětlení principu ownership chain
  • Ukázka klasifikace citlivých dat v databázi
  • Představení možností ochrany citlivých dat s pomocí šifrování
10 Monitoring výkonu databázových dotazů
  • Vysvětlení klíčových metrik, jak měřit a porovnávat výkon databázových dotazů
  • Ukázka sledování náročných dotazů spouštěných aplikací s pomocí Extended Events
  • Představení technologie Query Store na efektivní monitoring všech spouštěných dotazů v databázi
11 Analýza, návrh a strategie použití indexů
  • Vysvětlení, jak jsou uložena data na SQL Serveru, jaký je formát datové stránky, řádku a jaké typy datových stránek existují
  • Porovnání datových struktur halda (Heap) a clustered indexu a doporučení pro vhodné použití
  • Ukázka uložení dat na haldě, porovnání výhod a nevýhod
  • Vysvětlení struktury B+ stromu v clustered indexu, doporučení pro správnou volbu clustered klíče
  • Seznámení s non-clustered indexy, vysvětlení principu fungování a ukázka volby vhodných klíčů
  • Vysvětlení, proč se někdy navržené non-clustered indexy nepoužijí a jak zde pomůže covering index
  • Ukázka filtrovaného indexu a indexovaných computed columns
  • Seznámení s údržbou indexů
12 In-Memory OLTP a Columnstore indexy
  • Představení technologie In-memory OLTP a ukázka jejího vhodného použití
  • Seznámení s columnstore indexy, vysvětlení principů fungování a jejich vhodného použití
  • Nasazení clustered columnstore indexů v datových skladech
  • Možnosti využití non-clustered columnstore indexů v OLTP aplikacích
13 Zámky, transakce a izolační úrovně
  • Vysvětlení vlastností databázové transakce
  • Ukázka správného použití transakcí
  • Představení mechanizmů pro řízení souběžného přístupu
  • Seznámení s fungováním zámků v SQL Serveru a problémů z toho vyplývajících
  • Vysvětlení vhodného nastavení izolační úrovně a problémů souběžného zpracování, před kterými nás chrání
  • Použití izolační úrovně SNAPSHOT s využitím verzování řádků
Aktuální nabídka
Školicí místo
Jazyk kurzu

Uvedené ceny jsou bez DPH.

Školení na míru

Nenašli jste vhodný termín, nebo chcete školení přizpůsobit specifickým potřebám vašeho týmu? Rádi pro vás připravíme školení na míru.