sql server 2005. zaawansowane rozwiązania biznesowe full version.pdf

(7328 KB) Pobierz
890157768.001.png
6
SQL Server 2005. Zaawansowane rozwiAzania biznesowe
Rozdzia$ 3. Wyzwalacze ................................................................................... 67
Wst%p .............................................................................................................................. 67
Informacje ogólne ........................................................................................................... 67
Wyzwalacze typu AFTER .............................................................................................. 68
Tabele INSERTED i DELETED .................................................................................... 69
Identyfikacja rodzaju wyzwalacza .................................................................................. 70
Nieuruchamianie wyzwalaczy dla konkretnych instrukcji SQL ..................................... 72
CONTEXT_INFO — kontekst sesji w SQL Server 2005 .............................................. 73
Rekurencyjne i zagnie!d!one wywo"ywanie wyzwalaczy .............................................. 75
Funkcja COLUMNS_UPDATED i predykat UPDATE
— selektywne wywo"ywanie wyzwalaczy ................................................................... 78
Wyzwalacze INSTEAD OF ............................................................................................ 80
Operacje wykonywane w wyzwalaczu na wybranych wierszach ................................... 82
Wyzwalacze i perspektywy ............................................................................................ 85
Wyzwalacze uruchamiane na poziomie bazy danych ..................................................... 87
Wyzwalacze uruchamiane na poziomie serwera baz danych .......................................... 91
Podsumowanie ................................................................................................................ 92
Rozdzia$ 4. Dynamiczny SQL ............................................................................. 93
Wst%p .............................................................................................................................. 93
Informacje ogólne ........................................................................................................... 93
EXEC ............................................................................................................................. 94
EXEC AT ....................................................................................................................... 99
sp_executesql ................................................................................................................ 100
Limit instrukcji ............................................................................................................. 102
Sp_executesql i ustawienia #rodowiskowe ................................................................... 102
Dynamiczne filtry ......................................................................................................... 103
Wstrzykiwanie SQL ..................................................................................................... 105
Dynamiczny pivot danych ............................................................................................ 110
Podsumowanie .............................................................................................................. 113
Rozdzia$ 5. Tabele tymczasowe i zmienne tablicowe ....................................... 115
Wst%p ............................................................................................................................ 115
Informacje ogólne o tabelach tymczasowych ............................................................... 115
Globalne tabele tymczasowe ........................................................................................ 118
Zmienne tablicowe ....................................................................................................... 118
Baza tempdb ................................................................................................................. 120
Wyra!enia tablicowe .................................................................................................... 121
Podsumowanie .............................................................................................................. 122
Rozdzia$ 6. Transakcje i wyjAtki w aplikacjach biznesowych ............................ 123
Wst%p ............................................................................................................................ 123
Informacje ogólne o transakcjach ................................................................................. 123
Blokady ........................................................................................................................ 125
Poziomy izolacji ........................................................................................................... 129
Poziom izolacji READ UNCOMMITTED ............................................................. 130
Poziom izolacji READ COMMITTED .................................................................. 131
Poziom izolacji SNAPSHOT ................................................................................. 132
Poziom izolacji READ COMMITTED SNAPSHOT ............................................. 134
Podsumowanie poziomów izolacji ......................................................................... 134
Poziomy zapisywania ................................................................................................... 134
Zakleszczenia ............................................................................................................... 135
Obs"uga b"%dów w aplikacjach biznesowych ................................................................ 137
Transakcje a obs"uga b"%dów ........................................................................................ 139
Podsumowanie .............................................................................................................. 140
Spis tre!ci
7
Rozdzia$ 7. Full-Text Search ........................................................................... 141
Wst%p ............................................................................................................................ 141
Us"uga Full-Text Search ............................................................................................... 142
Tworzenie, modyfikowanie i usuwanie katalogu typu Full-Text .................................. 143
Tworzenie katalogu Full-Text z wykorzystaniem kreatora .................................... 145
Tworzenie katalogu Full-Text z poziomu kodu T-SQL .......................................... 147
Modyfikowanie katalogu Full-Text ........................................................................ 148
Usuwanie katalogu Full-Text ................................................................................. 148
Tworzenie, modyfikowanie i usuwanie indeksów typu Full-Text ................................ 149
Tworzenie indeksu Full-Text z wykorzystaniem kreatora ...................................... 149
Tworzenie indeksu Full-Text z poziomu kodu T-SQL ........................................... 152
Modyfikowanie indeksu Full-Text ......................................................................... 153
Usuwanie indeksu Full-Text ................................................................................... 155
Noise Files .................................................................................................................... 155
Uzyskiwanie metadanych o katalogach i indeksach Full-Text ..................................... 155
Podstawowe wyszukiwanie informacji ......................................................................... 156
Polecenie CONTAINS ................................................................................................. 156
Wyszukiwanie podstawowe ................................................................................... 157
Wyszukiwanie z wykorzystaniem wieloznaczników .............................................. 158
Wyszukiwanie wed"ug blisko#ci wyst$pienia s"ów ................................................ 158
Wyszukiwanie z wykorzystaniem form fleksyjnych .............................................. 159
Wyszukiwanie z wykorzystaniem tezaurusa .......................................................... 159
Wyszukiwanie wed"ug wagi s"ów .......................................................................... 160
Polecenie FREETEXT .................................................................................................. 161
Polecenie CONTAINSTABLE ..................................................................................... 162
Polecenie FREETEXTABLE ....................................................................................... 163
Wyszukiwanie informacji w plikach PDF .................................................................... 164
Podsumowanie .............................................................................................................. 166
Rozdzia$ 8. XML ............................................................................................ 167
Wst%p ............................................................................................................................ 167
Informacje o formacie XML ......................................................................................... 168
Przechowywanie danych XML w SQL Server 2005 .................................................... 168
Sprawdzanie poprawno#ci danych XML przy u!yciu schematów ................................ 170
Metody dost%pu do danych XML i ich obs"ugi ............................................................. 173
Metoda exist ........................................................................................................... 173
Metoda query ......................................................................................................... 174
Metoda value .......................................................................................................... 174
Metoda nodes ......................................................................................................... 175
Metoda modify ....................................................................................................... 176
Konwertowanie danych relacyjnych do formatu XML ................................................. 178
Polecenie FOR XML .............................................................................................. 178
Polecenie OPENXML ............................................................................................ 187
Podsumowanie .............................................................................................................. 190
Rozdzia$ 9. Database Mail .............................................................................. 191
Wst%p ............................................................................................................................ 191
Aktywowanie us"ugi Database Mail ............................................................................. 192
Konfigurowanie us"ugi Database Mail ......................................................................... 192
Testowanie us"ugi Database Mail ................................................................................. 198
Wysy"anie wiadomo#ci e-mail ...................................................................................... 199
Monitorowanie us"ugi Database Mail ........................................................................... 203
Dodatkowe procedury zwi$zane z us"ug$ Database Mail ............................................. 205
Podsumowanie .............................................................................................................. 205
8
SQL Server 2005. Zaawansowane rozwiAzania biznesowe
Rozdzia$ 10. RozwiAzania biznesowe ................................................................. 207
Wst%p ............................................................................................................................ 207
Pobieranie elementów z hierarchii wymiaru Parent-Child ............................................ 207
Rekurencyjne pobieranie elementów wymiarów .......................................................... 215
Generowanie tabeli wymiaru Multilevel na podstawie Parent-Child ............................ 221
Alternatywne hierarchie ............................................................................................... 230
Pobieranie informacji o tygodniach z przedzia"u czasowego ....................................... 233
Automatyczne wykrywanie nowych elementów wymiarów ......................................... 236
Szybki mechanizm odnajdowania zwielokrotnionych rekordów .................................. 238
Optymalizacja wstawiania danych i wi%zy integralno#ci .............................................. 238
Algorytm przeliczania danych ko'cowych, #rednich i przyrostowych
z akumulacji MTD na QTD i YTD ............................................................................ 240
Wykorzystanie j%zyka MDX .................................................................................. 241
Typy zasilanych danych ......................................................................................... 242
Podsumowanie .............................................................................................................. 244
Rozdzia$ 11. Integracja z .NET i CLR ................................................................. 245
Wst%p ............................................................................................................................ 245
Co to jest .NET i CLR? ................................................................................................ 246
Na czym polega integracja SQL Server 2005 z CLR? .................................................. 247
Kiedy u!ywa+ obiektów CLR? ..................................................................................... 248
Schemat u!ywania obiektów CLR ................................................................................ 249
W"$czenie obs"ugi obiektów CLR w SQL Server 2005 ................................................ 250
Przyk"ady obiektów CLR ............................................................................................. 251
UDF typu Scalar ..................................................................................................... 251
UDF typu Table-Value ........................................................................................... 257
User-Defined Trigger ............................................................................................. 263
User-Defined Type ................................................................................................. 267
User-Defined Aggregate ......................................................................................... 273
Zarz$dzanie obiektami ASSEMBLY ............................................................................ 277
Pobieranie metadanych o obiektach ASSEMBLY ................................................. 277
Zmiana poziomu zabezpiecze' ............................................................................... 279
Usuwanie obiektów ASSEMBLY .......................................................................... 280
Podsumowanie .............................................................................................................. 280
Rozdzia$ 12. SQL Server Integration Services .................................................... 281
Wst%p ............................................................................................................................ 281
Business Intelligence Development Studio ................................................................... 282
Architektura .................................................................................................................. 282
Control Flow ................................................................................................................. 282
Kontenery ............................................................................................................... 283
Zadania ................................................................................................................... 283
Procedury przep"ywu zada' ................................................................................... 286
Data Flow ..................................................................................................................... 286
Yród"a ..................................................................................................................... 287
Transformacje ........................................................................................................ 287
Destinations ............................................................................................................ 290
Event Handlers ............................................................................................................. 290
Variables ................................................................................................................ 291
Deployment .................................................................................................................. 291
Bezpiecze'stwo SSIS ................................................................................................... 296
Migracja DTS 2000 do SSIS 2005 ............................................................................... 297
Logowanie .................................................................................................................... 297
Podsumowanie .............................................................................................................. 299
Skorowidz ....................................................................................................... 301
Rozdzia� 8.
XML
Wst�p
SQL Server 2005 to pierwsza wersja serwera, w której dane XML s� przechowywane
i przetwarzane faktycznie jako XML , a nie jako pochodne danych tekstowych lub bi-
narnych, jak to by�o w poprzednich wersjach serwera. Za�adowanie danych XML np.
w SQL Server 2000 by�o stosunkowo proste, jednak ju� dost�p do tych danych, mo-
dyfikowanie i wyszukiwanie konkretnych obiektów wymaga�y z�o�onych operacji.
SQL Server 2000 umo�liwia� wykonanie tylko dwóch polece� zwi�zanych z obs�ug�
formatu XML :
OPENXML — umo�liwia za�adowanie dokumentu XML do pami�ci SQL Servera,
a nast�pnie utworzenie z niego zbioru rekordów relacyjnych.
FOR XML — umo�liwia zapis danych relacyjnych, b�d�cych wynikiem zapytania
SQL do postaci XML .
Wkrótce po dacie premiery SQL Server 2000 Microsoft zrozumia�, �e jego najnowsza
platforma bazodanowa nie wspiera obs�ugi danych i formatu XML na tyle, by sprosta�
oczekiwaniom i wymaganiom biznesowych u�ytkowników i twórców aplikacji w tym
zakresie. Widz�c, jak wa�nym formatem w �wiecie biznesowych aplikacji bazoda-
nowych sta� si� XML , Microsoft chcia� za wszelk� cen� zwi�kszy� jego integracj�
z SQL Server 2000. Jednak po oficjalnej premierze serwera firma mog�a zaproponowa�
tylko darmowe dodatki — pakiety, które rozszerza�y SQL Server w tym zakresie. Pierw-
szym takim pakietem by� SQLXML ( XML for SQL Server ), który dostarcza� m.in. na-
rz�dzia do bardzo szybkiego wczytywania danych XML . Kolejnym pakietem by� MSXML
( Microsoft XML Core Services ), który zawiera� m.in. parser XML . Ju� wtedy jasne by�o,
�e w kolejnej wersji SQL Server musi nast�pi� rewolucja w podej�ciu do formatu XML .
Integracj� XML z SQL Server 2005 nale�y rozpatrywa� w nast�puj�cych obszarach:
nowy typ danych XML ,
ograniczenia w kolumnach typu XML ,
Zgłoś jeśli naruszono regulamin