BookMaster.pl - księgarnia internetowa    Logowanie | Twoje konto | Koszyk | Pomoc | Kontakt | 
Witaj, jesteś nowym Klientem? Sprawdź jak kupować w BookMaster.pl. Zarejestruj się teraz.
Szukaj:  w dziale:  

Antywzorce języka SQL. Jak unikać pułapek podczas programowania baz danych

Bill Karwin

Powiększ okładkę


Cena detaliczna: 69,00 zł 
Nasza cena:62,10 zł
Oszczędzasz:6,90 zł (10%)
      Promocja: darmowa dostawa
 Sprawdź koszty dostawy (nowe okno) ››
Produkt aktualnie niedostępny.
Zaloguj się, aby otrzymać powiadomienie, gdy produkt będzie dostępny w sprzedaży.
Dodatkowy rabat! Dołącz do klubu BookMaster.pl,
zbieraj procenty i kupuj nawet z 5% rabatem.



Przepraszamy, produkt aktualnie niedostępny.




Szczegóły książki:
  • Tytuł oryginalny: SQL Antipatterns: Avoiding the Pitfalls of Database Programming
  • Numer katalogowy: 581539
  • liczba stron: 400
  • okładka: miękka
  • Wydawnictwo: Helion
  • wymiary: 158 x 235 mm
  • Data wydania: 2012-01-27

Antywzorce języka SQL. Jak unikać pułapek podczas programowania baz danych opis książki:
Zobacz, jak tego nie robić!
  • Jak nie projektować modelu logicznego i fizycznego bazy danych?
  • Jak nie zadawać zapytań SQL?
  • Jak nie wytwarzać aplikacji?

Podobno najlepiej jest uczyć się na cudzych błędach. Ta mądrość sprawdza się w wielu dziedzinach życia, także w informatyce. Ile razy brnąłeś w złe rozwiązanie, aż ktoś powiedział: "tak się nie robi"? Czy nie pomyślałeś wtedy o książce, w której zamiast metod rozwiązywania danych problemów znalazłbyś informacje, jak do nich nie dopuścić? Chciałbyś, żeby ta książka dotyczyła języka SQL? Oto ona!

Niniejsza publikacja przedstawia zbiór antywzorców w języku SQL. Dzięki niej poznasz błędy najczęściej popełniane przy projektowaniu i wykorzystywaniu baz danych. Dowiesz się z niej, jak nie tworzyć logicznego i fizycznego projektu bazy danych, jak nie zadawać zapytań SQL oraz jak nie wytwarzać aplikacji - a wszystko po to, aby zrozumieć, jak nie popełniać błędów. W każdej z czterech części znajdziesz ogrom interesujących informacji: poznasz zasady przechowywania haseł, błędy pojawiające się w wyniku zaokrągleń czy sposoby radzenia sobie z brakiem integralności bazy danych. Książka ta jest genialną pozycją, dzięki której już nigdy nie zboczysz z drogi w codziennej pracy z bazami danych i językiem SQL!
  • Antywzorce logicznego projektu bazy danych
  • Modelowanie drzew
  • Tworzenie kluczy głównych
  • Związki polimorficzne
  • Atrybuty wielokolumnowe
  • Antywzorce fizycznego projektu bazy danych
  • Błędy zaokrągleń
  • Przechowywanie dużych plików
  • Indeksy
  • Antywzorce zapytań
  • Wykorzystanie NULL-a
  • Grupowanie kolumn
  • Losowe wybieranie wiersza
  • Przeszukiwanie tekstów
  • Optymalizacja zapytań SQL
  • Antywzorce wytwarzania aplikacji
  • Przechowywanie haseł
  • Wstrzykiwanie SQL
Ucz się na błędach... Cudzych!


Produkty podobne:

Pólmocna kontrola typów w językach programowania baz danychPólmocna kontrola typów w językach programowania baz danych
Krzysztof Stencel
Okładka: miękka
do koszyka: 24,90 zł
Microsoft SQL Server 2005: Podstawy baz danych krok po krokuMicrosoft SQL Server 2005: Podstawy baz danych krok po kroku
Kalen Delaney
Okładka: miękka
do koszyka: 86,90 zł
Systemy baz danych. Wykłady i ćwiczeniaSystemy baz danych. Wykłady i ćwiczenia
Elżbieta Mrówka-Matejewska, Krzysztof Stencel, Lech Banachowski
Okładka: miękka
do koszyka: 40,90 zł

Recenzje naszych Klientów:

Książka "Antywzorce języka SQL. Jak unikać pułapek podczas programowania baz danych" Bill Karwin nie ma jeszcze dodanej recenzji.

Dodaj swoją recenzję

Antywzorce języka SQL. Jak unikać pułapek podczas programowania baz danych spis treści:

Rozdział 1. Wprowadzenie (11)
  • 1.1. Dla kogo jest ta książka (13)
  • 1.2. Co znajduje się w tej książce (14)
  • 1.3. Czego nie ma w tej książce (16)
  • 1.4. Konwencje (18)
  • 1.5. Przykładowa baza danych (19)
  • 1.6. Podziękowania (22)

Część I. Antywzorce logicznego projektu bazy danych (23)
Rozdział 2. Przechodzenie na czerwonym świetle (25)
  • 2.1. Cel: przechowywanie atrybutów wielowartościowych (26)
  • 2.2. Antywzorzec: listy elementów oddzielonych przecinkami (27)
  • 2.3. Jak rozpoznać ten antywzorzec (31)
  • 2.4. Usprawiedliwione użycia tego antywzorca (31)
  • 2.5. Rozwiązanie: utworzenie tabeli łączącej (32)

Rozdział 3. Naiwne drzewa (37)
  • 3.1. Cel: przechowywanie i uzyskiwanie hierarchii (38)
  • 3.2. Antywzorzec: zawsze odwołuj się do rodzica (39)
  • 3.3. Jak rozpoznać ten antywzorzec (43)
  • 3.4. Usprawiedliwione użycia tego antywzorca (44)
  • 3.5. Rozwiązanie: należy użyć alternatywnych modeli drzew (46)

Rozdział 4. Identyfikator potrzebny od zaraz (61)
  • 4.1. Cel: wypracowanie konwencji dla kluczy głównych (62)
  • 4.2. Antywzorzec: jeden rozmiar dla wszystkich (64)
  • 4.3. Jak rozpoznać ten antywzorzec (69)
  • 4.4. Usprawiedliwione użycia tego antywzorca (70)
  • 4.5. Rozwiązanie: klucz skrojony na miarę (70)

Rozdział 5. Wpis bez klucza (75)
  • 5.1. Cel: uproszczenie architektury bazy danych (76)
  • 5.2. Antywzorzec: rezygnacja z ograniczeń (77)
  • 5.3. Jak rozpoznać ten antywzorzec (80)
  • 5.4. Usprawiedliwione użycia tego antywzorca (81)
  • 5.5. Rozwiązanie: deklarowanie ograniczeń (81)

Rozdział 6. Encja-atrybut-wartość (85)
  • 6.1. Cel: obsługa zmiennych atrybutów (86)
  • 6.2. Antywzorzec: zastosowanie uniwersalnej tabeli atrybutów (87)
  • 6.3. Jak rozpoznać ten antywzorzec (93)
  • 6.4. Usprawiedliwione użycia tego antywzorca (94)
  • 6.5. Rozwiązanie: modelowanie podtypów (95)

Rozdział 7. Związki polimorficzne (103)
  • 7.1. Cel: odwołania do wielu rodziców (104)
  • 7.2. Antywzorzec: zastosowanie dwuzadaniowego klucza obcego (105)
  • 7.3. Jak rozpoznać ten antywzorzec (109)
  • 7.4. Usprawiedliwione użycia tego antywzorca (110)
  • 7.5. Rozwiązanie: uproszczenie relacji (110)

Rozdział 8. Atrybuty wielokolumnowe (117)
  • 8.1. Cel: przechowywanie atrybutów wielowartościowych (118)
  • 8.2. Antywzorzec: utworzenie wielu kolumn (118)
  • 8.3. Jak rozpoznać ten antywzorzec (122)
  • 8.4. Usprawiedliwione użycia tego antywzorca (123)
  • 8.5. Rozwiązanie: utworzenie tabeli zależnej (124)

Rozdział 9. Tribble metadanych (127)
  • 9.1. Cel: zapewnienie skalowalności (128)
  • 9.2. Antywzorzec: klonowanie tabel lub kolumn (129)
  • 9.3. Jak rozpoznać ten antywzorzec (134)
  • 9.4. Usprawiedliwione użycia tego antywzorca (135)
  • 9.5. Rozwiązanie: partycjonowanie i normalizacja (137)

Część II. Antywzorce fizycznego projektu bazy danych (141)
Rozdział 10. Błędy zaokrągleń (143)
  • 10.1. Cel: stosowanie liczb ułamkowych zamiast liczb całkowitych (144)
  • 10.2. Antywzorzec: stosowanie typu danych FLOAT (144)
  • 10.3. Jak rozpoznać ten antywzorzec (149)
  • 10.4. Usprawiedliwione użycia tego antywzorca (150)
  • 10.5. Rozwiązanie: stosowanie typu danych NUMERIC (150)

Rozdział 11. 31 smaków (153)
  • 11.1. Cel: ograniczenie zakresu danych kolumny do określonych wartości (154)
  • 11.2. Antywzorzec: określanie wartości w definicji kolumny (155)
  • 11.3. Jak rozpoznać ten antywzorzec (159)
  • 11.4. Usprawiedliwione użycia tego antywzorca (160)
  • 11.5. Rozwiązanie: określanie akceptowanych wartości na poziomie danych (160)

Rozdział 12. Pliki-widma (165)
  • 12.1. Cel: przechowywanie obrazów i innych dużych zasobów (166)
  • 12.2. Antywzorzec: przekonanie o konieczności stosowania plików (167)
  • 12.3. Jak rozpoznać ten antywzorzec (171)
  • 12.4. Usprawiedliwione użycia tego antywzorca (172)
  • 12.5. Rozwiązanie: stosowanie typów danych BLOB (173)

Rozdział 13. Strzelanie indeksami (177)
  • 13.1. Cel: optymalizacja wydajności (178)
  • 13.2. Antywzorzec: stosowanie indeksów bez żadnego planu (179)
  • 13.3. Jak rozpoznać ten antywzorzec (184)
  • 13.4. Usprawiedliwione użycia tego antywzorca (184)
  • 13.5. Rozwiązanie: zasada MENTOR dla indeksów (185)

Część III. Antywzorce zapytań (193)
Rozdział 14. Strach przed nieznanym (195)
  • 14.1. Cel: odróżnianie brakujących wartości (196)
  • 14.2. Antywzorzec: stosowanie NULL jako zwykłej wartości (lub odwrotnie) (197)
  • 14.3. Jak rozpoznać ten antywzorzec (201)
  • 14.4. Usprawiedliwione użycia tego antywzorca (202)
  • 14.5. Rozwiązanie: stosowanie NULL jako unikatowej wartości (203)

Rozdział 15. Niejasne grupy (209)
  • 15.1. Cel: uzyskiwanie wiersza z największą wartością w skali grupy (210)
  • 15.2. Antywzorzec: odwołania do niegrupowanych kolumn (211)
  • 15.3. Jak rozpoznać ten antywzorzec (214)
  • 15.4. Usprawiedliwione użycia tego antywzorca (215)
  • 15.5. Rozwiązanie: jednoznaczne stosowanie kolumn (216)

Rozdział 16. Losowy wybór (223)
  • 16.1. Cel: uzyskiwanie przypadkowego wiersza (224)
  • 16.2. Antywzorzec: losowe sortowanie danych (225)
  • 16.3. Jak rozpoznać ten antywzorzec (226)
  • 16.4. Usprawiedliwione użycia tego antywzorca (227)
  • 16.5. Rozwiązanie: brak ustalonej kolejności... (228)

Rozdział 17. Wyszukiwarka nędzarza (233)
  • 17.1. Cel: pełne przeszukiwanie tekstu (234)
  • 17.2. Antywzorzec: predykaty dopasowywania wzorców (235)
  • 17.3. Jak rozpoznać ten antywzorzec (236)
  • 17.4. Usprawiedliwione użycia tego antywzorca (237)
  • 17.5. Rozwiązanie: stosowanie narzędzi odpowiednio dobranych do realizowanych zadań (237)

Rozdział 18. Zapytanie-spaghetti (251)
  • 18.1. Cel: ograniczenie liczby zapytań SQL-a (252)
  • 18.2. Antywzorzec: rozwiązanie złożonego problemu w jednym kroku (253)
  • 18.3. Jak rozpoznać ten antywzorzec (256)
  • 18.4. Usprawiedliwione użycia tego antywzorca (257)
  • 18.5. Rozwiązanie: dziel i zwyciężaj (257)

Rozdział 19. Ukryte kolumny (263)
  • 19.1. Cel: ograniczyć ilość wpisywanego kodu (264)
  • 19.2. Antywzorzec: skrót prowadzący na manowce (265)
  • 19.3. Jak rozpoznać ten antywzorzec (267)
  • 19.4. Usprawiedliwione użycia tego antywzorca (268)
  • 19.5. Rozwiązanie: należy wprost nazywać kolumny (269)

Część IV. Antywzorce wytwarzania aplikacji (273)
Rozdział 20. Czytelne hasła (275)
  • 20.1. Cel: odzyskiwanie lub resetowanie haseł (276)
  • 20.2. Antywzorzec: przechowywanie haseł w formie zwykłego tekstu (276)
  • 20.3. Jak rozpoznać ten antywzorzec (279)
  • 20.4. Usprawiedliwione użycia tego antywzorca (280)
  • 20.5. Rozwiązanie: przechowywanie zabezpieczonych kodów haseł (281)

Rozdział 21. Wstrzykiwanie SQL-a (289)
  • 21.1. Cel: pisanie dynamicznych zapytań języka SQL (290)
  • 21.2. Antywzorzec: wykonywanie niesprawdzonych danych wejściowych jako kodu (291)
  • 21.3. Jak rozpoznać ten antywzorzec (299)
  • 21.4. Usprawiedliwione użycia tego antywzorca (300)
  • 21.5. Rozwiązanie: nie ufać nikomu (301)

Rozdział 22. Obsesja czystości pseudokluczy (309)
  • 22.1. Cel: sprzątanie danych (310)
  • 22.2. Antywzorzec: wypełnianie luk (311)
  • 22.3. Jak rozpoznać ten antywzorzec (314)
  • 22.4. Usprawiedliwione użycia tego antywzorca (314)
  • 22.5. Rozwiązanie: zapomnieć o problemie (315)

Rozdział 23. Przymykanie oczu na zło (321)
  • 23.1. Cel: pisać mniej kodu (322)
  • 23.2. Antywzorzec: ścinanie zakrętów (323)
  • 23.3. Jak rozpoznać ten antywzorzec (326)
  • 23.4. Usprawiedliwione użycia tego antywzorca (327)
  • 23.5. Rozwiązanie: elegancka obsługa błędów (327)

Rozdział 24. Immunitet dyplomatyczny (331)
  • 24.1. Cel: stosowanie najlepszych praktyk (332)
  • 24.2. Antywzorzec: kod SQL-a jako obywatel drugiej kategorii (333)
  • 24.3. Jak rozpoznać ten antywzorzec (334)
  • 24.4. Usprawiedliwione użycia tego antywzorca (335)
  • 24.5. Rozwiązanie: ustanowienie możliwie szerokiej kultury jakości (336)

Rozdział 25. Magiczna fasola (347)
  • 25.1. Cel: upraszczanie modeli w architekturze model-widok-komponent (348)
  • 25.2. Antywzorzec: model jako rekord aktywny (Active Record) (350)
  • 25.3. Jak rozpoznać ten antywzorzec (356)
  • 25.4. Usprawiedliwione użycia tego antywzorca (357)
  • 25.5. Rozwiązanie: model zawierający rekord aktywny (358)

Dodatki (365)
Dodatek A. Reguły normalizacji (367)
  • A.1. Co to oznacza, że baza jest relacyjna? (368)
  • A.2. Mity dotyczące normalizacji (371)
  • A.3. Czym jest normalizacja? (372)
  • A.4. Zdrowy rozsądek (383)

Dodatek B. Bibliografia (385)
Skorowidz (387)

Nowości z kategorii: Książki » informatyka » Bazy danych » SQL

Nowości z kategorii: Książki » Promocje » Darmowa dostawa



23 maja 2012, środa: ilość produktów w poszczególnych działach BookMaster.pl:
 109 882 książki, 43 888 muzyka, 68 151 książki zagraniczne, 7 792 filmy,  914 multimedia

Zobacz mapę kategorii: książki, muzyka, ksiązki zagraniczne, filmy, multimedia
↑ do góry   
| Strona główna | Bezpieczeństwo | Odbiór osobisty | Koszyk | RSS | Firefox | Regulamin | Pomoc | F.A.Q. | Szukamy pracowników | Mapa produktów | Kontakt |
Copyright © 2005-2012 BookMaster.pl - Księgarnia internetowa
al.Solidarności 117 lok. 406, 00-140 Warszawa (wejście od al. Jana Pawła II)