SQL Server - programowanie, typy zaawansowane, XML
5.0 (4 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
239 students enrolled
Wishlisted Wishlist

Please confirm that you want to add SQL Server - programowanie, typy zaawansowane, XML to your Wishlist.

Add to Wishlist

SQL Server - programowanie, typy zaawansowane, XML

Pisz skrypty w T-SQL. Używaj zmiennych, buduj pętle, stosuj zaawansowane typy: ROWVERSION, GEOMETRY, HIERARCHY, XML itp.
5.0 (4 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
239 students enrolled
Created by Rafał Kraik
Last updated 4/2017
Polish
Current price: $10 Original price: $110 Discount: 91% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 4.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Nauczysz się pisać własne skrypty w Transact-SQL
  • Dowiesz się jak deklarować i korzystać ze zmiennych
  • Szczegółowo zapoznasz się z pojęciem COLLATION
View Curriculum
Requirements
  • Potrafisz pisać podstawowe zapytania SQL
  • Potrafisz deklarować zmienne i pisać kod skryptu w jakimkolwiek języku
  • Znasz podstawowe zasady tworzenia i wykorzystywania baz danych
  • Zalecane ukończenie kursu "SQL Server - Wprowadzenie. Instalacja i narzędzia"
  • Zalecane ukończenie kursu "SQL Server - Zapytania SQL"
Description

Jest wiele takich zagadnień w SQL, które może nie są trudne, ale mało się o nich mówi i przez to są czasami kłopotliwe. W tym kursie staramy się wyjaśnić część z nich.

Pierwszym takim zagadnieniem jest pisanie własnych skryptów w języku Transact SQL. Generalnie nic trudnego, ale żeby sobie z tym poradzić musisz wiedzieć jak deklarować zmienne, jak przypisywać im wartości i jak je dalej wykorzystywać w swoich zapytaniach. Znając zmienne, będziesz mógł wykorzystać je podczas budowania instrukcji warunkowych. A stąd już prosta droga do tworzenia pętli WHILE. Oczywiście to nie koniec możliwości programistycznych osiągalnych w SQL, ale od czegoś trzeba zacząć. Zobaczysz jak wiele na pierwszy rzut oka skomplikowanych problemów uda się rozwiązać stosując właśnie te informacje!

Drugi istotny temat to specjalistyczne typy danych. Microsoft z wersji na wersję dodaje do SQL Server nowe możliwości, problem w tym, że zaczniemy je wykorzystywać dopiero kiedy je poznamy. Można przecież zapamiętać współrzędne GPS w postaci dwóch liczb, jednak kiedy przyjdzie do policzenia odległości między punktami, to powstanie problem. Ale jeśli do zapamiętania współrzędnych użyjesz typu GEOGRAPHY, to odległość wyliczysz korzystając z jednej funkcji. Podobnie z typami GEOMETRY, HIERARCHYID, ROWVERSION, UNIQUEIDENTIFIER. Typy te są w SQL dłużej lub krócej, a nie są zbyt często wykorzystywane, bo po prostu za mało się o nich mówi, tymczasem korzyści z ich stosowania mogą być ogromne.

Trzeci niezmiernie ważny temat to typ XML. Większość osób zajmujących się bazą danych, nie lubi pracować z XML. Dla osób, które na codzień prezentują dane w postaci tabeli, plik wypełniony znacznikami XML zupełnie się nie podoba. Jedynym marzeniem jest wtedy skonwertować takie dane do postaci tabelarycznej. Żeby zrobić to skutecznie, trzeba wiedzić jak pracować z taką funkcją jak OPENXML, czy metodą nodes. Niekiedy sytuacja jest odwrotna. Dane uzyskiwane zapytaniem należy skonwertować do XML. W takim przypadku przyda się klauzula FOR XML. Oczywiście do zrozumienia XML, trzeba też wiedzieć co to root element, element, atrybut, schemat XML, namespace itp. O tym wszystkim również opowiada ten kurs.

Kurs jest dość intensywny, ale od czego jest przycisk "pause" i możliwość obejrzenia lekcji jeszcze raz!  Jeżeli w trakcie kursu coś okaże się niejasne, możesz skorzystać z pomocy trenera. 

Ten kurs jest trzecim z serii kursów przygotowuących doo egaminów ścieżki MCSA SQL Server ale nie tylko, tj.

  1. 70-461 Querying Microsoft SQL Server
  2. 70-462 Administering Microsoft SQL Server Databases
  3. 70-463 Implementing a Data Warehouse with Microsoft SQL Server
  4. 70-464 Developing Microsoft SQL Server Databases

Najważniejsze tematy kursu:

  • Korzystanie ze zmiennych
  • Instrukcja IF (z przykładami)
  • Instrukcja WHILE (z przkładami)
  • Typ ROWVERSION
  • Typ UNIQUE IDENTIFIER
  • Co to jest COLLATION
  • Typ HIERARCHYID
  • Typ GEOMETRY
  • Typ GEOGRAPHY
  • Typ XML
  • Pojęcia związane z XML, typed vs untyped XML, namespace, schema
  • Generowanie danych  w postaci XML (klauzula FOR XML)
  • Metody typu XML: nodes, exists, value
  • Modyfikacja danych XML z poziomu SQL
  • Indeksy budowane na kolumnach typu XML
  • Wczytywanie XML z pliku na dysku

ISBN 978-83-945846-2-7


Who is the target audience?
  • Programiści tworzący aplikacje korzystające z SQL Server
  • Administratorzy MS SQL automatyzujący swoją pracę z wykorzystaniem skryptów
  • Kandydaci przygotowujący się do egzaminu 70-461 oraz 70-463
Students Who Viewed This Course Also Viewed
Curriculum For This Course
33 Lectures
04:20:25
+
Intro - wprowadzenie
2 Lectures 05:47

Zobacz tutaj:

  • Dla kogo jest ten kurs
  • Jak kurs może Ci pomóc w certyfikacji
  • Czego przydatnego na kursie może się nauczyć administrator lub programista baz danych
  • Jak jest zbudowany kurs i jak z nim pracować
Preview 02:34

Ten 3-minutowy film to streszczenie kursu. Zobacz żeby sprawdzić czego się możesz spodziewać!

Preview 03:13
+
Programowanie w TSQL
6 Lectures 30:15

W tej lekcji:

  • Wprowadzenie do instrukcji warunkowej IF
  • Korzystanie z ELSE
  • Grupowanie poleceń w bloku BEGIN / END
  • Debugowanie skryptu
Instrukcja warunkowa IF - VIDEO
04:06

W tej lekcji:

  • Odnajdowanie daty kursu (poprzedni dzień roboczy)
  • Korzyści z zastosowania IF bez ELSE
  • Debugowanie skryptu
Instrukcja warunkowa IF w praktyce - wyznaczenie kursu waluty - VIDEO
05:39

W tej lekcji:

  • Budowanie skryptu tworzącego obiekty w bazie danych
  • Zastosowanie instrukcji IF w celu sprawdzenia występowania obiektu w bazie
  • Warunkowe wykonanie tylko części kodu
Instrukcja warunkowa IF w pracacy administratora bazy danych - VIDEO
03:57

W tej lekcji:

  • Budowa pętli WHILE
  • Warunek pętli WHILE
  • Inkrementacja zmiennej sterującej
  • Zastosowanie zmiennej NOCOUNT
Pętla WHILE - VIDEO
02:33

W tej lekcji:

  • Problem kasowania dużej ilości danych w jednej dużej transakcji
  • Kasowanie mniejszej porcji danych za pomocą TOP
  • Zastosowanie pętli WHILE do podziału jednej dużej transakcji na wiele mniejszych
  • Znaczenie zmiennej @@ROWCOUNT
  • Przerwanie pętli z wykorzystaniem BREAK
Pętla WHILE w praktyce - podział dużej transakcji kasującej na mniejsze - VIDEO
08:44
+
Specjalistyczne typy ROWVERSION, UNIQUEIDENTIFIER i opcja COLLATION
4 Lectures 25:56

W tej lekcji

  • Zobaczysz co to jest typ ROWVERSION
  • Jak stworzyć tabelę wykorzystującą ten typ
  • Jak pisać polecenia INSERT, gdy wstawiasz rekord do tabeli wykorzystującej ROWVERSION
  • Co dzieje się w polu typu ROWVERSION po wstawieniu lub zmodyfikowaniu rekordu
  • Jak jest generowana wartość ROWVERSION jeśli w baza posiada kilka tabel z kolumną tego typu
  • Co to jest blokowanie optymistyczne i dlaczego ROWVERSION świetnie się do niego nadaje.
Preview 06:21

W tej lekcji

  • Cechy charakterystyczne typu UNIQUEIDENTIFIER
  • Zastosowanie typu przy projektowaniu tabel
  • Działanie funkcji NEWID
  • Cecha funkcji NEWSEQUENTIALID
  • Zastosowanie typu UNIQUEIDENTIFIER oraz NEWID w pracy administratora
Typ UNIQUEIDENTIFIER - VIDEO
05:13

W tej lekcji

  • Co to jest collation
  • Jak sprawdzić collation obowiązujące na serwerze
  • Jak sprawdzić collation obowiązujące na bazie danych
  • Jak sprawdzić collation dla kolumny w tabeli
  • Częste problemy z collation i sposoby ich unikania
  • Rodzaje collation: SQL i Windows
Collation - co to jest collation?
09:39

W tej lekcji

  • Dlaczego przed stałymi napisowymi używamy literału N
  • W jakich przypadkach brak literału powoduje błąd
  • Wpływ collation bazy danych na kodowanie znaków
  • Czy UNICODE pozwala uniknąć wszelkich problemów z kodowaniem znaków?
Collation - literał N przed stałymi napisowymi
04:43
+
Budowanie Hierarchii - typ HIERARCHYID
2 Lectures 19:22

W tej lekcji

  • Kiedy można zastosować hierarchyid
  • Tworzenie tabeli z kolumną hierarchyid
  • Indeksy: breath first i depth first - zastosowanie i składnia
  • Wstawianie pierwszego rekordu
  • Wstawianie pierwszego rekordu potomnego
  • Wstawianie kolejnych rekordów
  • Wyświetlanie rekordów w czytelny dla użytkownika sposób
  • Metody GetLevel() i ToString()
Typ HIERARCHYID - wprowadzanie danych - VIDEO
12:19

W tej lekcji:

  • Wyświetlanie wszystkich obiektów położonych niżej w strukturze - metoda IsDescendantOf
  • Wyświetlanie tylko obiektów bezpośrednio poniżej danego elementu - metoda GetAncestor
  • Wyświetlanie tylko obiektów położonych o określoną ilość poziomów niżej - metoda GetAncestor
  • Przełożenie obiektu w hierarchi - metoda GetReparentedValue
  • Problemy wynikające ze zmiany położenia w hierarchii
Typ HIERARCHYID - modyfikacja danych
07:03
+
Typy przestrzenne GEOMETRY i GEOGRAPHY
5 Lectures 01:00:56

W tej lekcji:

  • Jakie obiekty geometryczne można tworzyć w SQL Server
  • Jak inicjować wartość zmiennych typu geometrycznego
  • Jak tworzyć punkt, odcinek, krzywą
  • Jak twoorzyć wielokąty
  • Jak łączyć ze sobą kształty
  • Korzystanie z metod standardowych Open Geospacial Consortium
  • Zastosowanie typu geometrycznego
Typ geometryczny - wprowadzenie
14:36

W tej lekcji:

  • Przegląd metod pozwalających na pracę z typem geometrycznym
  • Różnice między metodami standardowymi a niestandardowymi
  • Metody zdefiniowane przez Open Geospatial Consortium
  • Metody niestandardowe
  • Obliczanie: pola, obwodu, odległości między kształtami, konwersje kształtów, dodawanie i odejmowanie kształtów, wyznaczanie bufora wokół kształtu
Typ geometryczny - metody
12:31

W tej lekcji:

  • OGC - Open Geospatial Consorcium jako źródło standardów dortyczących danych geometrycznych
  • Spatial Row Identifier i różne standardy opisu geograficznego kuli ziemskiej
  • Standard GPS
  • Rysowanie punktów i odcinków na kuli ziemskiej
  • Rysowanie mapy świata
  • Wyznaczanie pola obszaru i długości obwodu terenów kuli ziemskiej
  • Typowe zastosowanie typu geograficznego
Preview 10:17

W tej lekcji:

  • Porównanie indeksów budowanych na kolumnach o typie standardowym z indeksem przestrzennym
  • Proces teselizacji 
  • Metody optymalizacyjne stosowane podczas budowy indeksu
  • Opcje związane z typem geometrycznym
  • Budowanie indeksu na kolumnach geograficznych
  • Funkcje korzystające z indeksów przestrzennych
Indeks przestrzenny - wprowadzenie
10:55

W tej lekcji:

  • Budowanie indeksu przestrzennego w interfejsie graficznym
  • Tworzenie indeksu przestrzennego poleceniem TSQL
  • Różnice między indeksami geometrycznymi a geograficznymi
  • Warunki tworzenia indeksów przestrzennych
  • Pisanie zapytań korzystających z indeksów przestrzennych
  • Warunki jakie muszą być spełnione, aby zapytanie skorzystało z indeksu
  • Zrozumienie działania indeksu przestrzennego
Indeks przestrzenny w praktyce
12:37
+
Praca z XML w SQL Server
14 Lectures 01:58:09

W tej lekcji

  • Co to jest XML
  • Zalety XML
  • Kiedy go wykorzystywać
  • Praca z XML w SSMS
  • Podstawowe pojęcia związane z XML: XML Document, XML Fragment, Root Element, Element, Attribute
XML - wprowadzenie
05:20

W tej lekcji:

  • Dlaczego w XML może dochodzić do konfliktu nazw
  • Jak tego konfliktu uniknąć
  • Co to jest URI
  • Co to jest namespace
  • Składnia prefiksu przestrzeni nazw
XML - namespace
09:04

W tej lekcji:

  • Jak wynik zapytania skonwertować do postaci XML z wykorzystaniem składni FOR XML RAW
  • Jak zmieniać wygląd/konstrukcję pliku XML modyfikując parametry FOR XML RAW
  • Znaczenie słów kluczowych ROOT, ELEMENTS
  • Sposób umieszczania informacji o wartości NULL z wykorzystaniem XSINIL
Preview 08:38

W tej lekcji:

  • Generowanie zagnieżdżonego XML z wykorzystaniem elementów i atrybutów
  • Dlaczego istotna jest klauzula ORDER BY w zapytaniu przekształcanym w XML
  • Dlaczego istotna jest kolejność kolumn w zapytaniu przekształcanym w XML
  • Znaczenie aliasów tabel w zapytaniu
  • Modyfikacja wyglądu XML z wykorzystaniem słów kluczowych ROOT, ELEMENTS, XSINIL
XML -eksport danych z wykorzystaniem FOR XML AUTO
09:47

W tej lekcji:

  • Składnia FOR XML PATH
  • Podobieństwa PATH do RAW i AUTO: tworzenie dokumentu XML, nadawanie nazwy generowanym elementom, zapisywanie informacji o NULL
  • Cechy wyróżniające FOR XML PATH
  • Nadawanie aliasów kolumnom w celu tworzenia atrybutów (notacja z "@") oraz w celu tworzenia podelementów (notacja "element/podelement")
  • Generowanie XML z własnym namespace
  • Definiowanie namespace jako domyślny
XML - eksport danych z wykorzystaniem FOR XML PATH
10:47

W tej lekcji:

  • Kiedy korzystać z FOR XML EXPLICIT
  • Omówienie budowy zapytania do generowania XML z wykorzystaniem metody explicit
  • Omówienie zanaczenia UNION
  • Omówienie znaczenia kolumn Tag i Parent
  • Korzystanie z aliasów kolumn
XML - eksport danych z wykorzystaniem FOR XML EXPLICIT
06:57

W tej lekcji:

  • Dlaczego typ XML jest nam potrzebny?
  • Przewaga XML nad NVARCHAR
  • Deklarowanie zmiennych typu XML
  • Na czym polega elastyczność typu XML
  • Tworzenie tabeli korzystającej z typu XML
  • Tworzenie procedury korzystającej z typu XML
XML - jak korzystać z typu XML?
05:20

W tej lekcji:

  • Budowanie złożonych zapytań z podzapytaniami, w których wykorzystywany jest XML
  • Kodowanie zastrzeżonych znaków XML w dokumentach XML
  • Słowo kluczowe TYPE stosowane w podzapytaniu
XML - typ XML w podzapytaniu
05:47

W tej lekcji:

  • Co to jest schemat XML
  • Rodzaje schematów: oparte na atrybutach i na elemenatach
  • Generowanie schema definition w oparciu o istniejącą tabelę
  • Omówienie podstawowych typów występujących w XML schema definition (XSD)
  • Zapisywanie XSD w postaci schema collection w bazie danych
  • Deklarowanie zmiennych XML zgodnych z określonym schematem
  • Analiza błędów do jakich może dochodzić przy przypisywaniu wartości do zmiennych o określonym typie: niepoprawny typ, brak namespace, nadmiarowy namespace
XML - schematy, typed XML vs untyped XML
13:30

W tej lekcji:

  • Metoda value wykorzystywana do pobierania wartości z XML
  • Metoda exist wykorzystywana do sprawdzania czy w XML występuje określony element lub atrybut
  • Wyrażenia XPath
  • Odwołanie do wartości atrybutu poprzez składnię @AttributeName
  • Odwołanie do wartości elementu poprzez funkcję text()
  • Wyszukiwanie odpowiedniego elementu lub atrybutu z wykorzystaniem kryteriów wyszukiwania
XML - metody value i exist
10:27

W tej lekcji

  • Korzystanie z metody nodes w celu konwersji dokumentu XML na mniejsze fragmenty
  • Korzystanie z CROSS APPLY
  • Pobieranie wartości z danych XML za pomocą względnego lub bezwzględnego wyrażenia XPATH i konsekwencje wynikające z wybranej metody
XML - metoda nodes
06:28

W tej lekcji:

  • Metoda modify typu XML
  • Dodawanie elementów w zmiennej typu XML
  • Dodawanie atrybutów do elementów w zmiennej XML
  • Modyfikacja danych XML
  • Usuwanie elementów w zmiennejj XML
  • Przekazywanie parametrów do metody modify pozwalające na dynamiczne określanie elementów, które mają być zmienione
XML - modyfikacja danych
08:19

W tej lekcji:

  • Jak wczytać plik tekstowy zapytaniem SQL-owym
  • Jak wczytać zawartość pliku XML do SQL i umieścić go w zmiennej
  • Przygotowanie XML do odpytywania z wykorzystanim OPENXML: funkcja sp_xml_preparedocument
  • Korzystanie z funkcji OPENXML
  • Wyszukiwanie wartości "po atrybucie" lub "po elemencie"
  • Klauzula WITH i odczytywanie wartości z bieącego lub wyższego poziomu w strukturze XML
  • Usuwanie pamięciowej reprezentacji XML z wykorzystaniem sp_xml_removedocument
XML - parsowanie XML z wykorzystaniem OPENXML
11:24

W tej lekcji

  • Proces tworzenia indeksów XML
  • Indeksy PRIMARY
  • Indeksy SECONDARY
  • Rodzaje indeksów secondary: PATH, VALUE, XML
  • Korzystanie z indeksów XML w zapytaniach
  • Uzyskiwanie informacji o indeksach w tym o indeksach XML
XML - indeksy XML
06:21
About the Instructor
Rafał Kraik
4.5 Average rating
113 Reviews
1,685 Students
6 Courses
Microsoft Certified Trainer

EN

Rafał Kraik - Microsoft Certified Trainer. Programmer, database administrator, trainer and consultant. The  main areas of interest are database administration and design, automation with PowerShell and Bash, analysis and presentation of data.

Experienced e-learning and distance learning tutor.

Worked with, or teached for such companies as ING, Intel, Cadbury, Bank PeKaO, Volvo, UPC, ZUS, Polish Post and many more...

PL

Rafał Kraik - Microsoft Certified Trainer. Programista, administrator baz danych, trener i konsultant. Główne specjalności to administracja i programowanie baz danych, automatyzacja z wykorzystaniem PowerShell, Bash oraz analiza i prezentacja danych.

Doświadczony trener szkoleń e-learning.

Pracował/pracuje/prowadził szkolenia dla takich firm i instytucji jak ING, Intel, Cadbury, Bank PeKaO, Volvo, UPC, ZUS, Poczta Polska i wiele innych...