Język SQL – zapytania i operacje na danych
- Wprowadzenie do Microsoft SQL Server
- Wersje SQL Server
- Wymagania sprzętowe
- SQL Server Management Studio i inne narzędzia
- Dokumentacja
- Organizacja pracy
- Wprowadzenie do baz danych SQL
- Czym są: baza danych, DBMS, aplikacja kliencka
- Tabele (relacje) i zależności między nimi
- SQL jako język operujący na zbiorach
- Wyrażenie typu SELECT (DQL – Data Query Language)
- Porządkowanie i filtrowanie wyników: WHERE, ORDER BY, TOP, OFFSET-FETCH
- Modyfikator DISTINCT
- Stosowanie aliasów
- Wyrażenia warunkowe: CASE
- Wartości nieznane: NULL
- Wyrażenia operujące na wielu tabelach
- Rodzaje złączeń: INNER JOIN, OUTER JOIN, CROSS JOIN
- SELF JOIN
- Wielokrotne złączenia w jednej kwerendzie
- Funkcje wbudowane w MS SQL Server
- Typy danych i konwersja typów
- Funkcje operujące na datach
- Funkcje operujące na napisach
- Funkcje logiczne
- Operacje na wartościach NULL
- Operacje na zbiorach
- UNION, UNION ALL
- EXCEPT, INTERSECT
- Operacje modyfikacji danych (DML)
Analityka i zaawansowane elementy SQL
- Grupowanie i agregacja danych
- GROUP BY oraz HAVING
- Funkcje agregujące
- Analityczne podsumowania danych: ROLLUP, CUBE, GROUPING SETS
- PIVOT oraz UNPIVOT
- Funkcje okienkowe / analityczne
- Tworzenie okien przy pomocy OVER
- Funkcje ROW_NUMBER, RANK, DENSE_RANK, NTILE, LAG, LEAD, FIRST_VALUE oraz LAST_VALUE
- Podzapytania
- Stosowanie podzapytań
- Operatory EXISTS oraz IN
- Tworzenie własnych tabel i schematów
- Typy kolumn
- Klucze i referencje
- Pozostałe więzy integralności
- Podstawy zarządzania wydajnością bazy i zapytań
Programowanie w T-SQL
- Wprowadzenie do języka Transact-SQL
- Przetwarzanie wsadowe (batches)
- Sterowanie przepływem: pętle i wyrażenia warunkowe
- Generacja dynamicznego kodu SQL
- Procedury składowane
- Kwerendy w procedurach składowanych
- Przekazywanie parametrów procedurom składowanym
- Używanie dynamicznego SQL-a
- Własne funkcje
- funkcje skalarne
- funkcje tabelaryczne
- APPLY, CROSS APPLY, OUTER APPLY
- Obsługa błędów
- Rodzaje błędów
- Stosowanie bloków TRY/CATCH
- Stosowanie THROW do przekazywania błędów klientowi
- Transakcyjność w Microsoft SQL Server
- Transakcyjność a relacyjna baza danych
- BEGIN, COMMIT i ROLLBACK
- Obsługa błędów przy pomocy bloku CATCH
- Wyzwalacze (triggery)
Administracja MS SQL Server
- Instalacja serwera bazy danych z punktu widzenia administratora
- Planowanie instalacji
- Przebieg instalacji
- Rozmieszczenie plików bazy danych
- SSMS – narzędzie administratora
- Konfiguracja serwera do pracy w sieci
- Zarządzanie plikami bazy danych
- Systemowe bazy danych
- Dziennik transakcyjny
- Przestrzeń tymczasowa
- Bazy danych użytkownika
- Tworzenie kopii zapasowych
- Planowanie strategii odtwarzania
- Rodzaje kopii zapasowych
- Archiwizacja baz danych
- Tworzenie kopii baz i logów transakcyjnych
- Odtwarzanie baz danych
- Scenariusze odtwarzania baz
- Odtwarzanie z kopii
- Odtwarzanie z wykorzystaniem dziennika transakcji
- Importowanie i eksportowanie danych
- Kopiowanie i przenoszenie baz
- Import i eksport tabel
- Zarządzanie bezpieczeństwem
- Użytkownicy
- Sposoby autentykacji
- Uprawnienia użytkowników
- Role bezpieczeństwa
- Monitorowanie pracy serwera
- Dynamiczne zarządzanie widokami i funkcjami
- Monitorowanie wydajności