helion
 
 
 
Bazy danych i PostgreSQL. Od podstaw

Bazy danych i PostgreSQL. Od podstaw

Tytuł oryginału: Beginning Databases with PostgreSQL

Cena: 89,00 zł

Autorzy:

Richard Stones, Neil Matthew

Tłumacz:

Radosław Meryk

Data wydania: 18 kwiecień 2002
Okładka: miękka
Format: B5
Stron: 616
ISBN: 83-7197-650-X
Dodatek: Brak
Katalog: Inne, PostgreSQL, Wrox
Fragment książki w formacie PDF
PostgreSQL wciąż zyskuje na popularności i jest uważany za najlepszy darmowy system zarządzania relacyjnymi bazami danych. Początkowo był tworzony w środowisku uniwersyteckim, potem -- jako otwarty projekt internetowy -- przez utalentowanych programistów z całego świata. Coraz częściej duże firmy decydują się na wybór PostgreSQL jako systemu zarządzania bazami danych.

Niniejsza książka jest kompletnym podręcznikiem opisującym cechy systemu PostgreSQL. Zawiera opis najprostszych metod instalacji i zarządzania systemem, tworzenia własnych baz danych, jak również omówienie integracji baz danych z aplikacjami napisanymi w najpopularniejszych językach programowania wykorzystywanych w Internecie. Czytelnik znajdzie w niej wskazówki dotyczące tworzenia coraz bardziej wyrafinowanych zapytań języka SQL, łączenia tabel, wykorzystywania transakcji, monitorowania pracy serwera, tworzenia własnych aplikacji w językach wysokiego poziomu i wiele innych.

Dla kogo jest ta książka?

Książka jest adresowana do Czytelników rozpoczynających swoją przygodę z relacyjnymi bazami danych (nie jest wymagana wiedza z zakresu języków SQL, PHP, Java czy Perl). Opisano w niej zarówno najprostsze zapytania, jak i coraz bardziej skomplikowane metody zarządzania bazami danych, które umożliwią im rozwiązywanie codziennych problemów administratorów baz danych. Dzięki lekturze można nauczyć się zarządzania bazą danych PostgreSQL w środowiskach Windows i Unix.

Co zawiera książka?

  • Wprowadzenie do systemu PostreSQL
  • Opis instalacji z pakietów binarnych i kodów źródłowych w środowiskach Windows i Unix
  • Opis narzędzi graficznych
  • Przykłady zapytań obejmujących zapytania złożone, funkcje agregujące i inne
  • Przedstawienie transakcji, poziomów izolacji, procedur składowanych i wyzwalaczy
  • Monitorowanie wydajności i kontrolowanie pracy serwera
  • Łączenie z bazą danych i wykonywanie instrukcji SQL z poziomu języka C (libpq)
  • Tworzenie aplikacji przy użyciu języków PHP, Perl i Java


Podziękowania (15)

Wstęp (17)

  • Jak wymawiać "PostgreSQL" (17)
  • Co jest treścią tej książki? (17)
  • Stosowane konwencje (19)
  • Pobranie kodu źródłowego (20)

Rozdział 1. Wstęp do PostgreSQL (21)

  • Programowanie z wykorzystaniem danych (21)
  • Kartotekowe bazy danych (23)
  • Co to jest baza danych? (24)
  • Rodzaje baz danych (25)
    • Sieciowy model bazy danych (25)
    • Hierarchiczny model baz danych (26)
    • Relacyjny model bazy danych (27)
  • Języki zapytań (28)
    • SQL (29)
  • Systemy zarządzania bazą danych (31)
  • Co to jest PostgreSQL? (32)
    • Krótka historia PostgreSQL (33)
    • Architektura PostgreSQL (34)
    • Licencje Open Source (35)
    • Zasoby (36)

Rozdział 2. Podstawy relacyjnych baz danych (37)

  • Arkusze kalkulacyjne (37)
    • Trochę terminologii (38)
    • Ograniczenia arkuszy kalkulacyjnych (39)
    • Czym wyróżnia się baza danych? (40)
      • Wybór kolumn (41)
      • Wybór typu danych dla każdej z kolumn (41)
      • Unikalne identyfikowanie wierszy (42)
      • Porządek wierszy (43)
  • Wprowadzanie danych do bazy danych (43)
    • Dostęp do danych przez sieć (44)
    • Tworzenie podzbiorów informacji (45)
  • Dodatkowe informacje (48)
    • Wiele tabel (48)
    • Relacje pomiędzy tabelami (49)
  • Projektowanie tabel (51)
    • Podstawowe zasady rzemiosła (52)
      • Zasada pierwsza - podział danych na kolumny (52)
      • Zasada druga - określenie unikalnego sposobu identyfikacji każdego wiersza (52)
      • Zasada trzecia - usunięcie powtarzających się informacji (53)
      • Zasada czwarta - stosowanie właściwych nazw (53)
    • Przykład bazy danych klient-zamówienie (54)
    • Wyjście poza granice dwóch tabel (54)
    • Finalizowanie projektu wstępnego (57)
  • Podstawowe typy danych (59)
    • Wartości specjalna NULL (60)
      • Sprawdzanie wartości NULL (61)
  • Przykładowa baza danych (62)

Rozdział 3. Instalacja (63)

  • Instalować czy uaktualniać? (64)
  • Instalacja PostgreSQL z pakietów binarnych systemu Linux (64)
      • Anatomia instalacji PostgreSQL (66)
  • Instalacja PostgreSQL z kodu źródłowego (69)
      • Uruchamianie PostgreSQL (72)
      • Tworzenie bazy danych (76)
      • Tworzenie tabel (78)
      • Usuwanie tabel (79)
      • Wypełnianie tabel danymi (80)
      • Zatrzymywanie PostgreSQL (82)
  • Instalacja PostgreSQL w Windows (83)
      • Cygwin - środowisko UNIX w systemie Windows (83)
      • Usługi IPC dla Windows (87)
      • PostgreSQL dla Cygwin (88)
      • Kompilacja PostgreSQL w Windows (88)
      • Konfiguracja PostgreSQL dla Windows (89)
      • Automatyczne uruchamianie PostgreSQL (90)

Rozdział 4. Dostęp do danych (95)

  • Wykorzystanie psql (96)
  • Proste instrukcje SELECT (98)
    • Podstawianie nazw kolumn (100)
    • Porządek wierszy (100)
    • Ukrywanie duplikatów (103)
  • Wykonywanie obliczeń (105)
  • Wybór wierszy (107)
    • Bardziej złożone warunki (109)
    • Porównywanie wzorców (111)
    • Ograniczanie liczby wierszy w wyniku (112)
  • Porównania danych o różnych typach (113)
    • Sprawdzanie wartości NULL (113)
    • Sprawdzanie danych typu data i czas (114)
      • Ustawianie formatu daty i czasu (115)
      • Funkcje daty i czasu (119)
  • Wiele tabel (121)
    • Tworzenie związku pomiędzy dwoma tabelami (121)
    • Aliasy nazw tabel (126)
  • Tworzenie związku trzech tabel (127)

Rozdział 5. Graficzne narzędzia PostgreSQL (133)

  • psql (134)
    • Uruchamianie psql (134)
    • Polecenia w psql (134)
    • Historia poleceń (135)
    • Skrypty w psql (136)
    • Badanie bazy danych (137)
    • Przegląd opcji wiersza polecenia (138)
    • Przegląd poleceń wewnętrznych (139)
  • ODBC (139)
  • pgAdmin (144)
  • Kpsql (149)
  • PgAccess (150)
    • Formularze i narzędzia do projektowania zapytań (152)
  • Microsoft Access (153)
    • Tabele łączy (154)
    • Wprowadzanie danych (158)
    • Raporty (158)
  • Microsoft Excel (159)
  • Zasoby (163)

Rozdział 6. Interfejs danych (165)

  • Wprowadzanie danych do bazy danych (165)
    • Proste operacje INSERT (166)
      • Bezpieczniejsza postać instrukcji INSERT (169)
    • Wprowadzanie danych do kolumn typu SERIAL (170)
      • Dostęp do numerów sekwencji (171)
    • Wprowadzanie wartości NULL (173)
    • Polecenie copy (175)
    • Pobieranie danych bezpośrednio z innej aplikacji (178)
  • Aktualizacja danych w bazie danych (182)
      • Ostrzeżenie (183)
  • Usuwanie wierszy z bazy danych (185)

Rozdział 7. Zaawansowane wyszukiwanie danych (189)

  • Funkcje agregacji (190)
    • COUNT (190)
      • GROUP BY a COUNT(*) (192)
      • HAVING a COUNT(*) (194)
      • COUNT(nazwa_kolumny) (196)
    • Funkcja MIN() (197)
    • Funkcja MAX() (198)
    • Funkcja SUM() (199)
    • Funkcja AVG() (199)
  • Powiązania typu UNION (200)
  • Zapytania podrzędne (202)
    • Rodzaje zapytań podrzędnych (205)
    • Zapytania podrzędne skorelowane (206)
  • Powiązania same z sobą (210)
  • Powiązania zewnętrzne (211)

Rozdział 8. Definicje danych i operacje manipulowania danymi (217)

  • Typy danych (218)
    • Typ Boolean (218)
    • Typy znakowe (220)
    • Typy numeryczne (222)
    • Typy daty i czasu (225)
  • Specjalne typy PostgreSQL (225)
    • Tworzenie własnych typów (226)
      • Typy tablicowe (226)
    • Konwersja pomiędzy typami (227)
    • Inne operacje manipulowania danymi (229)
    • Magiczne zmienne (230)
    • Kolumna OID (230)
  • Manipulowanie tabelami (231)
    • Tworzenie tabel (232)
      • Ograniczenia dla kolumny (232)
      • Ograniczenia dla tabel (236)
    • Uaktualnianie struktury tabeli (237)
    • Usuwanie tabel (240)
    • Tabele tymczasowe (240)
  • Perspektywy (240)
  • Ograniczenia kluczy obcych (244)
    • Klucze obce jako ograniczenia dla kolumn (246)
    • Klucze obce jako ograniczenia dla tabel (247)
    • Opcje ograniczeń dla kluczy obcych (250)
      • DEFERRABLE (251)
      • ON UPDATE oraz ON DELETE (251)

Rozdział 9. Transakcje i blokady (253)

  • Co to są transakcje? (254)
    • Reguły ACID (257)
  • Transakcje dla pojedynczych użytkowników (258)
    • Ograniczenia transakcji (260)
  • Transakcje z wieloma użytkownikami (261)
    • Poziomy izolacji ANSI (261)
      • Niepożądane zjawiska (262)
    • Poziomy izolacji ANSI/ISO (266)
    • Tryb chained (autozatwierdzanie) oraz tryb unchained (267)
  • Blokady (268)
    • Zakleszczenia (269)
    • Jawne blokady (271)
      • Blokowanie wierszy (271)
      • Blokady tabel (272)

Rozdział 10. Procedury przechowywane w bazie danych oraz procedury wyzwalane (275)

  • Operatory (276)
    • Priorytet operatorów oraz kierunek nadawania wartości (277)
    • Operatory arytmetyczne (278)
    • Operatory porównań i operatory znakowe (279)
    • Inne operatory (281)
  • Funkcje (282)
  • Języki proceduralne (284)
  • Czynności wstępne dla języka PL/pgSQL (285)
    • Przeciążanie funkcji (287)
    • Wyświetlanie listingu funkcji (288)
    • Usuwanie funkcji (289)
    • Użycie apostrofów (289)
  • Anatomia procedur zapisywanych w bazie danych (289)
    • Argumenty funkcji (290)
    • Komentarze (290)
    • Deklaracje (291)
      • ALIAS (292)
      • RENAME (293)
      • Prosta deklaracja zmiennej (293)
      • Złożona deklaracja zmiennej (294)
      • ROWTYPE (294)
      • RECORD (294)
    • Instrukcje przypisania (295)
      • Instrukcja SELECT INTO (295)
      • PERFORM (296)
    • Instrukcje sterujące (296)
    • Zwracanie wartości przez funkcje (296)
      • Wyjątki i komunikaty (297)
      • Instrukcje warunkowe (298)
      • Pętle (299)
    • Zapytania dynamiczne (304)
  • Funkcje SQL (305)
  • Procedury wyzwalane (306)
    • Tworzenie wyzwalaczy (307)
      • Procedury wyzwalane (308)
  • Dlaczego procedury przechowywane w bazie danych i procedury wyzwalane? (313)

Rozdział 11. Administracja bazą danych PostgreSQL (315)

  • Instalacja domyślna (316)
    • bin (316)
    • include i lib (316)
    • doc (317)
    • man (318)
    • share (318)
    • data (318)
    • Początkowa baza danych (319)
  • Sterowanie serwerem (320)
    • Uruchamianie i zatrzymywanie serwera (320)
  • Użytkownicy (322)
      • CREATE USER (323)
      • DROP USER (324)
      • ALTER USER (325)
      • Grupy (325)
      • UPRAWNIENIA (326)
    • Perspektywy (328)
  • Zarządzanie danymi (329)
    • Tworzenie i usuwanie baz danych (329)
    • Tworzenie kopii zapasowych i odtwarzanie danych (330)
    • Uaktualnienia bazy danych (335)
  • Bezpieczeństwo bazy danych (335)
  • Opcje konfiguracji (338)
    • Konfiguracja serwera na etapie kompilacji (338)
    • Konfiguracja działania serwera (339)
  • Wydajność (341)
    • VACUUM (341)
    • Indeksy (344)

Rozdział 12. Projekt bazy danych (347)

  • Zrozumienie problemu (348)
  • Na czym polega dobry projekt bazy danych? (349)
      • Zdolność przechowywania potrzebnych danych (349)
      • Zdolność obsługi wymaganych związków (349)
      • Zdolność rozwiązywania problemu (349)
      • Zdolność do narzucania integralności danych (350)
      • Zdolność narzucania wydajności w przetwarzaniu danych (350)
      • Zdolność uwzględniania przyszłych zmian (351)
  • Etapy projektowania bazy danych (351)
    • Zbieranie informacji (351)
    • Projekt logiczny (352)
      • Określenie obiektów (352)
      • Przekształcenie obiektów w tabele (354)
    • Określenie relacji oraz krotności (358)
      • Naszkicowanie diagramu związków encji (358)
      • Przykładowa baza danych (359)
  • Przekształcenie w model fizyczny (363)
      • Ustalenie kluczy głównych (363)
      • Zdefiniowanie kluczy zewnętrznych (365)
    • Zdefiniowanie typów danych (367)
    • Pełne definicje tabel (370)
    • Implementacja reguł biznesu (370)
    • Sprawdzenie projektu (370)
  • Postacie normalne (371)
    • Pierwsza postać normalna (371)
    • Druga postać normalna (372)
    • Trzecia postać normalna (373)
  • Znane wzorce (373)
    • Wiele-do-wielu (374)
    • Hierarchia (374)
    • Relacje rekurencyjne (375)
  • Zasoby (377)

Rozdział 13. Dostęp do PostgreSQL z języka C z wykorzystaniem biblioteki libpq (379)

  • Korzystanie z biblioteki libpq (380)
  • Połączenia z bazą danych (381)
    • Plik Makefile (384)
    • Dodatkowe informacje (384)
  • Uruchamianie SQL za pomocą libpq (385)
  • Transakcje (390)
    • Uzyskiwanie danych z zapytań (390)
  • Wyświetlanie wyników zapytań (394)
  • Kursory (397)
  • Wartości binarne (403)
  • Mechanizm pracy asynchronicznej (403)

Rozdział 14. Dostęp do PostgreSQL z języka C z wykorzystaniem wbudowanego SQL (409)

  • Pierwszy program z wbudowanym SQL (410)
    • Argumenty programu ecpg (414)
    • Rejestrowanie wykonywania instrukcji SQL (415)
    • Połączenia z bazą danych (416)
    • Obsługa błędów (418)
    • Obsługa błędów (421)
    • Zmienne hosta (422)
    • Pobieranie danych za pomocą ecpg (425)
    • Transakcje (429)
    • Obsługa danych (429)
    • Kursory (432)
    • Diagnozowanie kodu ecpg (435)

Rozdział 15. Dostęp do PostgreSQL z języka PHP (437)

  • Dodanie obsługi PostgreSQL w PHP (438)
  • Korzystanie z interfejsu API języka PHP dla PostgreSQL (439)
    • Połączenia z bazą danych (439)
      • Połączenia trwałe (440)
      • Zamykanie połączeń (441)
      • Informacje o połączeniu (441)
    • Tworzenie zapytań (442)
      • Złożone zapytania (443)
      • Wykonywanie zapytań (444)
    • Przetwarzanie zestawów wyników (445)
      • Pobieranie wartości z zestawów wyników (447)
      • Informacje dotyczące pól (450)
      • Zwalnianie pamięci przydzielonej na zestawy wyników (451)
      • Konwersja typów wartości wyników (452)
    • Obsługa błędów (452)
    • Kodowanie znaków (453)
    • PEAR (454)
      • Interfejs abstrakcji bazy danych PEAR (454)
      • Obsługa błędów PEAR (456)
      • Przygotowanie i wykonanie zapytania (457)

Rozdział 16. Dostęp do PostgreSQL z języka Perl (459)

  • Pgsql_perl5 lub moduł Pg (460)
    • Instalacja pgsql_perl5 (460)
      • CPAN (461)
  • Korzystanie z interfejsu pgsql_perl5 (462)
  • DBI języka Perl (468)
    • Instalacja DBI i PostgreSQL DBD (468)
    • Wykorzystywanie DBI (469)
    • Co jeszcze możemy zrobić przy użyciu DBI? (475)
    • Wykorzystanie DBIx::Easy (477)
    • DBI i XML (479)

Rozdział 17. Dostęp do PostgreSQL z języka Java (483)

  • Opis ogólny JDBC (484)
  • Sterowniki JDBC (484)
    • Typ 1 (485)
    • Typ 2 (485)
    • Typ 3 (485)
    • Typ 4 (486)
  • Konfigurowanie sterownika JDBC PostgreSQL (486)
  • DriverManager i Driver (487)
    • Java.sql.DriverManager (487)
      • Zarządzanie sterownikami (487)
      • Zarządzanie połączeniami (488)
      • Zarządzanie rejestracją zdarzeń dotyczących JDBC (489)
      • Zarządzanie limitami czasu logowania się (489)
    • java.sql.Driver (489)
  • Połączenia (492)
    • Tworzenie instrukcji (492)
    • Obsługa transakcji (493)
    • Metadane bazy danych (494)
      • Pobieranie metadanych PostgreSQL (494)
  • Zestawy wyników JDBC (496)
    • Tryb wielodostępu i typ zestawu wyników (496)
      • Typ (496)
      • Tryb wielodostępu (497)
    • Przeglądanie zestawów wyników (497)
      • Przewijanie zestawów wyników (497)
      • Sprawdzanie położenia kursora (498)
      • Kierunek pobierania i rozmiar (499)
    • Korzystanie z danych zestawu wyników (500)
    • Odwzorowanie typów danych PostgreSQL (500)
    • Zestawy wyników, które można aktualizować (500)
      • Usuwanie danych (501)
      • Aktualizacja danych (501)
      • Wstawianie danych (502)
    • Inne metody (503)
  • Instrukcje JDBC (503)
    • Instrukcje (504)
      • Sprawdzanie wyników i zestawów wyników (505)
      • Obsługa wsadowego przetwarzania instrukcji SQL (506)
      • Metody różne (506)
      • Przykład klienta JDBC (506)
    • Instrukcje przygotowane (508)
      • Wykonywanie instrukcji SQL (509)
      • Aktualizacja danych (510)
      • Przykładowe wykorzystanie przygotowanych instrukcji (510)
  • Wyjątki i ostrzeżenia SQL (512)
  • Aplikacja JDBC z Graficznym Interfejsem Użytkownika (GUI) (512)
    • Diagram klasy (513)
      • Customer (513)
      • CustomerTableModel (513)
      • CustomerApp (514)
      • CustomerPanel (514)
    • Komunikacja z systemem (514)
      • Szczegółowe informacje dotyczące klientów (515)
      • Dodawanie nowego klienta (516)
      • Usuwanie klienta (517)
    • Pliki źródłowe (517)
      • Klasa Customer (517)
      • Klasa CustomerTableModel (519)
      • Klasa CustomerPanel (521)
      • Klasa CustomerApp (523)
    • Kompilacja i uruchomienie aplikacji (528)

Rozdział 18. Dalsze informacje i zasoby (529)

  • Nie-relacyjne modele baz danych (529)
  • OLTP, OLAP i pozostała terminologia bazy danych (530)
  • Zasoby (532)
    • Zasoby Sieciowe (533)
      • PostgreSQL (533)
      • PHP (533)
      • Perl (533)
      • Java i JDBC (533)
    • Ogólne narzędzia (533)
    • Książki (534)
      • SQL (534)
      • PHP (534)
      • Perl (535)
      • Java (535)

Dodatek A Ograniczenia bazy danych PostgreSQL (537)

    • Wielkość bazy danych: bez ograniczenia (538)
    • Wielkość tabeli: 16 TB - 64 TB (538)
    • Liczba wierszy w tabeli: bez ograniczenia (538)
    • Indeksy: bez ograniczenia (539)
    • Wielkość kolumny: 1 GB (539)
    • Kolumny w tabeli: 250+ (539)
    • Wielkość wiersza: bez ograniczenia (539)

Dodatek B Typy danych PostgreSQL (541)

  • Typy logiczne (541)
  • Dokładne typy numeryczne (542)
  • Przybliżone typy numeryczne (542)
  • Typy daty i czasu (543)
  • Typy znakowe (544)
  • Typy geometryczne (544)
  • Typy różne (545)

Dodatek C Składnia SQL w PostgreSQL (547)

  • Polecenia SQL w PostgreSQL (547)
  • Składnia dostępnych w PostgreSQL instrukcji SQL (547)

Dodatek D Opis opcji i poleceń psql (561)

      • Opcje wiersza polecenia psql (561)
      • Wewnętrzne polecenia psql (563)

Dodatek E Schemat baz danych i tabel (565)

Dodatek F Obsługa dużych obiektów w PostgreSQL (569)

  • Dodawanie grafiki do bazy danych (569)
    • Obiekty BLOB (571)
      • Import i eksport (571)
      • Zdalny import i eksport (574)
    • Programowanie obiektów BLOB (575)

Dodatek G Uwagi do wydania 7.2 PostgreSQL (577)

  • Przegląd (577)
    • VACUUM (577)
    • Transakcje (577)
    • Numery OID (577)
    • Optymalizator (578)
    • Bezpieczeństwo (578)
    • Statystyki (578)
    • Ustawienia międzynarodowe (578)
  • Migracja do wersji 7.2 (578)
  • Zmiany (579)
    • Działanie serwera (579)
    • Wydajność (580)
    • Uprawnienia (580)
    • Uwierzytalnianie klientów (581)
    • Konfiguracja serwera (581)
    • Zapytania (581)
    • Operacje dotyczące schematu (582)
    • Instrukcje pomocnicze (583)
    • Typy danych i funkcje (583)
    • Ustawienia międzynarodowe (585)
    • PL/pgSQL (585)
    • PL/Perl (586)
    • PL/Tcl (586)
    • PL/Python (586)
    • Psql (586)
    • Libpq (586)
    • JDBC (587)
    • ODBC (588)
    • ECPG (588)
    • Różne interfejsy (589)
    • Kompilacja i instalacja (589)
    • Kod źródłowy (590)
    • Contrib (590)

Skorowidz (593)

Komentarze:

Brak komentarzy

Imię/Nick:

Adres email:

Strona WWW:

Treść Komentarza:

  



Pełna MOC możliwości

Pełna MOC możliwości

Cena: 39,00 zł

Czytaj więcej o książce