sql server 2005. programowanie. od podstaw cała książka, ebooki
[ Pobierz całość w formacie PDF ] 6 SQL Server 2005. Programowanie. Od podstaw Rozdział 3. Podstawowe polecenia języka T-SQL ....................................................................................65 Podstawowe polecenie — SELECT ................................................................................. 66 Polecenie SELECT i klauzula FROM ........................................................................... 66 Klauzula WHERE ..................................................................................................... 70 ORDER BY .............................................................................................................. 73 Agregacje danych za pomocą klauzuli GROUP BY ....................................................... 77 Tworzenie warunków za pomocą klauzuli HAVING ....................................................... 85 Generowanie XML-a za pomocą klauzuli FOR XML ...................................................... 87 Wykorzystanie wskazówek za pomocą klauzuli OPTION ............................................... 88 Predykaty DISTINCT i ALL ......................................................................................... 88 Wprowadzanie danych za pomocą polecenia INSERT ....................................................... 90 Polecenie INSERT INTO...SELECT ............................................................................. 95 Wprowadzanie zmian za pomocą polecenia UPDATE ........................................................ 97 Polecenie DELETE ...................................................................................................... 100 Podsumowanie .......................................................................................................... 101 Ćwiczenia .................................................................................................................. 102 Rozdział 4. Złączenia (JOINs) .................................................................................................................. 103 Złączenia JOIN ........................................................................................................... 104 Złączenia wewnętrzne (INNER JOIN) ............................................................................. 105 Dlaczego INNER JOIN przypomina klauzulę WHERE .................................................. 110 Złączenia zewnętrzne .................................................................................................. 114 Proste złączenie zewnętrzne .................................................................................. 115 Bardziej skomplikowane złączenia zewnętrzne ......................................................... 120 Spojrzenie w obie strony za pomocą złączeń pełnych ..................................................... 124 Złączenia krzyżowe ..................................................................................................... 126 Alternatywne składnie złączeń ..................................................................................... 127 Alternatywne INNER JOIN ....................................................................................... 127 Alternatywne OUTER JOIN ...................................................................................... 128 Alternatywne CROSS JOIN ...................................................................................... 129 Unia .......................................................................................................................... 130 Podsumowanie .......................................................................................................... 135 Ćwiczenia .................................................................................................................. 135 Rozdział 5. Tworzenie i modyfikacja tabel ............................................................................................ 137 Nazwy obiektów w systemie SQL Server ....................................................................... 137 Nazwa schematu .................................................................................................. 138 Nazwa bazy danych ............................................................................................... 141 Nazwa serwera ..................................................................................................... 141 Przegląd ustawień domyślnych ............................................................................... 141 Polecenie CREATE ...................................................................................................... 142 CREATE DATABASE ............................................................................................... 142 CREATE TABLE ...................................................................................................... 148 Polecenie ALTER ........................................................................................................ 161 ALTER DATABASE .................................................................................................. 161 ALTER TABLE ........................................................................................................ 164 Polecenie DROP ......................................................................................................... 168 Wykorzystanie narzędzia GUI ....................................................................................... 169 Tworzenie bazy danych za pomocą SQL Server Management Studio .......................... 169 Powrót do kodowania — podstawy tworzenia skryptów za pomocą SQL Server Management Studio ......................................................... 175 Podsumowanie .......................................................................................................... 176 Ćwiczenia .................................................................................................................. 176 Spis treści 7 Rozdział 6. Ograniczenia ......................................................................................................................... 177 Rodzaje ograniczeń .................................................................................................... 178 Ograniczenia domeny ............................................................................................ 178 Ograniczenia encji ................................................................................................. 179 Ograniczenia integralności referencyjnej .................................................................. 179 Nazewnictwo ograniczeń ............................................................................................. 180 Ograniczenia kluczy .................................................................................................... 181 Ograniczenia PRIMARY KEY .................................................................................... 182 Ograniczenia FOREIGN KEY .................................................................................... 184 Ograniczenia UNIQUE ............................................................................................ 195 Ograniczenia CHECK ................................................................................................... 196 Ograniczenia DEFAULT ................................................................................................ 198 Definiowanie ograniczenia DEFAULT w poleceniu CREATE TABLE ............................... 199 Dodawanie ograniczenia DEFAULT do istniejącej tabeli ............................................. 199 Wyłączanie ograniczeń ................................................................................................ 200 Ignorowanie niewłaściwych danych podczas tworzenia ograniczenia .......................... 200 Tymczasowe wyłączenie istniejącego ograniczenia ................................................... 202 Reguły i wartości domyślne — kuzyni ograniczeń .......................................................... 204 Reguły .................................................................................................................. 204 Wartości domyślne ................................................................................................ 206 Określanie tabel wykorzystujących konkretne reguły i wartości domyślne ................... 207 Wyzwalacze a integralność danych ............................................................................... 208 Czego używać ............................................................................................................ 208 Podsumowanie .......................................................................................................... 209 Rozdział 7. Zwiększanie możliwości zapytań ......................................................................................... 211 Co to jest podzapytanie .............................................................................................. 212 Tworzenie podzapytania zagnieżdżonego ................................................................. 213 Podzapytania skorelowane .......................................................................................... 216 W jaki sposób działają podzapytania skorelowane .................................................... 216 Podzapytania skorelowane w klauzuli WHERE .......................................................... 217 Praca z wartościami NULL — funkcja ISNULL .......................................................... 221 Tabele pochodne ........................................................................................................ 222 Operator EXISTS ........................................................................................................ 224 Inne sposoby wykorzystania EXISTS ........................................................................ 226 Mieszanie typów danych — funkcje CAST i CONVERT ...................................................... 227 Kwestie wydajności .................................................................................................... 230 Lepiej używać złączeń, podzapytań czy czegoś innego? ............................................ 230 Podsumowanie .......................................................................................................... 232 Ćwiczenia .................................................................................................................. 232 Rozdział 8. „Być normalnym” normalizacja i inne kwestie podstaw projektowania .................. 233 Tabele ....................................................................................................................... 234 Utrzymywanie danych „normalnymi” ............................................................................. 234 Zanim zaczniemy ................................................................................................... 235 Pierwsza postać normalna ..................................................................................... 237 Druga postać normalna ......................................................................................... 241 Trzecia postać normalna ........................................................................................ 242 Inne postacie normalne ......................................................................................... 244 Relacje ...................................................................................................................... 245 Jeden do jednego .................................................................................................. 245 — 8 SQL Server 2005. Programowanie. Od podstaw Jeden do jednego lub wielu .................................................................................... 247 Wiele do wielu ...................................................................................................... 249 Diagramy ................................................................................................................... 253 Tabele ................................................................................................................. 255 Dodawanie i usuwanie tabel .................................................................................. 256 Relacje ................................................................................................................. 262 Denormalizacja .......................................................................................................... 266 Poza normalizacją ...................................................................................................... 267 Prostota ............................................................................................................... 267 Wybór typów danych .............................................................................................. 267 Błędy w sposobie przechowywania .......................................................................... 268 Szkic prostego przykładu ............................................................................................. 269 Tworzenie bazy danych .......................................................................................... 269 Dodawanie diagramu i tabeli początkowej ............................................................... 269 Dodawanie relacji .................................................................................................. 274 Dodawanie ograniczeń ........................................................................................... 276 Podsumowanie .......................................................................................................... 278 Ćwiczenia .................................................................................................................. 278 Rozdział 9. Struktury danych i indeksów w SQL Server .................................................................... 279 Struktury danych w SQL Serverze ................................................................................. 279 Baza danych ......................................................................................................... 279 Zakres ................................................................................................................. 280 Strona .................................................................................................................. 280 Wiersze ................................................................................................................ 281 Podstawy indeksów .................................................................................................... 281 B-drzewa .............................................................................................................. 283 Sposób udostępniania danych w SQL Serverze ........................................................ 286 Tworzenie, modyfikacja i usuwanie indeksów ................................................................ 295 Polecenie CREATE INDEX ....................................................................................... 295 Tworzenie indeksów XML ....................................................................................... 302 Indeksy wywiedzione tworzone z ograniczeniami ...................................................... 303 Mądry wybór — jaki indeks, gdzie i kiedy go stosować .................................................. 303 Selektywność ....................................................................................................... 304 Przyglądanie się kosztom — gdy mniej znaczy więcej ............................................... 305 Wybieranie właściwego indeksu klastrowego ........................................................... 305 Kolejność kolumn ................................................................................................. 308 Usuwanie indeksów ............................................................................................... 308 Korzystanie z Database Engine Tuning Advisor ........................................................ 309 Utrzymywanie indeksów .............................................................................................. 309 Fragmentacja ........................................................................................................ 310 Identyfikacja fragmentacji a prawdopodobieństwo podziału stron .............................. 310 Podsumowanie .......................................................................................................... 314 Ćwiczenia .................................................................................................................. 315 Rozdział 10. Widoki .................................................................................................................................. 317 Proste widoki ............................................................................................................. 317 Widoki jako filtry ................................................................................................... 321 Bardziej złożone widoki ............................................................................................... 323 Wykorzystanie widoków do zmiany danych bez użycia wyzwalaczy INSTEAD OF ........... 326 Edycja widoków za pomocą T-SQL-a ............................................................................. 330 Spis treści 9 Usuwanie widoków ..................................................................................................... 330 Tworzenie i edycja widoków w SQL Server Management Studio ...................................... 330 Edycja widoków w SQL Server Management Studio .................................................. 334 Sprawdzanie — wyświetlanie istniejącego kodu ............................................................ 334 Ochrona kodu — szyfrowanie widoków ......................................................................... 336 Słowo o schemacie powiązania ................................................................................... 337 Upodabnianie widoków do tabel za pomocą VIEW_METADATA ........................................ 338 Widoki indeksowane (materializowane) ........................................................................ 338 Podsumowanie .......................................................................................................... 342 Ćwiczenia .................................................................................................................. 342 Rozdział 11. Tworzenie skryptów i programów wsadowych ............................................................. 343 Podstawy skryptów ..................................................................................................... 344 Instrukcja USE ...................................................................................................... 344 Deklaracja zmiennych ............................................................................................ 345 Użycie @@IDENTITY .............................................................................................. 349 Użycie @@ROWCOUNT .......................................................................................... 352 Batch ........................................................................................................................ 353 Błędy w programach wsadowych ............................................................................. 355 Kiedy korzystać z programów wsadowych ................................................................ 356 SQLCMD ................................................................................................................... 359 Dynamiczny SQL — tworzenie kodu „w locie” za pomocą polecenia EXEC ....................... 363 Zastosowania EXEC .............................................................................................. 364 Podsumowanie .......................................................................................................... 368 Ćwiczenia .................................................................................................................. 369 Rozdział 12. Procedury składowane ...................................................................................................... 371 Tworzenie procedury składowanej — podstawy składni .................................................. 372 Przykład prostej procedury ..................................................................................... 372 Zmiana procedury składowanej za pomocą ALTER ......................................................... 373 Usuwanie procedur składowanych ............................................................................... 374 Określanie parametrów ............................................................................................... 374 Deklaracja parametrów .......................................................................................... 374 Instrukcje sterujące przepływem danych ....................................................................... 379 Polecenie IF ... ELSE ............................................................................................. 380 Instrukcja CASE .................................................................................................... 390 Zapętlanie przy użyciu instrukcji WHILE ................................................................... 397 Instrukcja WAITFOR ............................................................................................... 398 Bloki TRY/CATCH .................................................................................................. 399 Potwierdzanie powodzenia lub niepowodzenia za pomocą wartości zwrotnych .................. 399 Jak używać RETURN .............................................................................................. 400 Obsługa błędów ......................................................................................................... 402 Dotychczasowe sposoby... ..................................................................................... 403 Bloki TRY/CATCH .................................................................................................. 409 Obsługa błędów przed ich wystąpieniem ................................................................. 412 Ręczne zgłaszanie błędu ........................................................................................ 415 Dodawanie własnych komunikatów o błędzie ........................................................... 419 Co oferuje procedura składowana ................................................................................ 422 Tworzenie wywoływalnych procesów ........................................................................ 423 Używanie procedur składowanych w celu zapewnienia bezpieczeństwa ...................... 424 Procedura składowana a wydajność ........................................................................ 425
[ Pobierz całość w formacie PDF ]
zanotowane.pldoc.pisz.plpdf.pisz.plmement.xlx.pl
|