E-book details

Projektowanie baz danych dla każdego. Przewodnik krok po kroku. Wydanie IV

Projektowanie baz danych dla każdego. Przewodnik krok po kroku. Wydanie IV

Michael J. Hernandez

Ebook

Mimo upływu lat relacyjne bazy danych wciąż mają się świetnie! Z każdym rokiem stają się coraz doskonalsze i radzą sobie z coraz większymi zbiorami danych. Wciąż jednak podstawą dobrej aplikacji bazodanowej jest dobry projekt samej bazy. Wielu osobom projektowanie poprawnych struktur bazodanowych wydaje się czymś z pogranicza wyższej matematyki i czarnej magii. Tymczasem zdobycie tej umiejętności jest możliwe bez lat studiowania skomplikowanych teorii matematycznych. Wystarczy przyswoić kluczowe podstawy i nauczyć się korzystać z kilku zdroworozsądkowych koncepcji i teorii.

Ta książka jest rocznicowym, przejrzanym i zaktualizowanym wydaniem kultowego podręcznika do samodzielnej nauki projektowania relacyjnych baz danych. Zawarte w nim informacje można wykorzystywać niezależnie od zastosowanego oprogramowania. Przedstawiono tu, jak projektować nowoczesne bazy danych, które mają poprawną strukturę, są niezawodne i ułatwiają wprowadzanie zmian. Opisano wszystkie etapy projektowania: od planowania po definiowanie tabel, pól, kluczy, relacji między tabelami, reguł biznesowych i widoków. Dodatkowo znajdziemy tu praktyczne techniki zwiększania integralności danych, omówienie często popełnianych błędów i wskazówki, kiedy warto łamać zasady. Treść przewodnika wzbogacają pytania kontrolne i rysunki, które bardzo pomagają w jej skutecznym opanowaniu.

W książce:

  • typy baz danych, modele i cele projektowe
  • tworzenie tabel i relacji, specyfikacje pól i widoki
  • poziomy integralności danych
  • tworzenie reguł biznesowych
  • perspektywy relacyjnych baz danych

Nie ma dobrej bazy danych bez dobrego projektu!

  • O autorze
  • Podziękowania
  • Słowo wstępne
  • Przedmowa
  • Wprowadzenie
    • Co nowego w czwartym wydaniu?
    • Kto powinien przeczytać tę książkę?
    • Cel niniejszej książki
    • Jak czytać tę książkę?
    • Organizacja książki
      • Część I. Projektowanie relacyjnych baz danych
      • Część II. Proces projektowania
      • Część III. Inne problemy projektowania baz danych
      • Dodatki
    • Słowo na temat przykładów i technik opisywanych w tej książce
    • Nowe podejście do nauki
  • Część I. Projektowanie relacyjnych baz danych
  • 1. Relacyjna baza danych
    • Tematy omówione w tym rozdziale
    • Czym jest baza danych?
    • Model relacyjnych baz danych
      • Pozyskiwanie danych
      • Zalety relacyjnych baz danych
    • Zarządzanie relacyjną bazą danych
    • Co niesie przyszłość?
    • Podsumowanie
    • Pytania kontrolne
  • 2. Cele projektowania
    • Tematy omówione w tym rozdziale
    • Dlaczego projektowanie baz danych powinno nas interesować
    • Znaczenie teorii
    • Zalety poznania dobrej metodologii projektowania
    • Cele dobrego projektowania
    • Korzyści wynikające z dobrego projektowania
    • Metody projektowania baz danych
      • Tradycyjne metody projektowania
      • Metoda projektowania prezentowana w tej książce
    • Normalizacja
    • Podsumowanie
    • Pytania kontrolne
  • 3. Terminologia
    • Tematy omówione w tym rozdziale
    • Dlaczego terminologia jest ważna
    • Pojęcia związane z wartością
      • Dane
      • Informacje
      • Null
      • Wartość znaczników null
      • Problem ze znacznikami null
    • Pojęcia związane ze strukturą
      • Tabele
      • Pole
      • Rekord
      • Widok (perspektywa)
      • Klucze
      • Indeks
    • Pojęcia związane z relacjami
      • Relacje
      • Typy relacji
        • Relacje jeden do jednego
        • Relacje jeden do wielu
        • Relacje wiele do wielu
      • Typy uczestnictwa
      • Stopień uczestnictwa
    • Pojęcia związane z integralnością
      • Specyfikacja pola
      • Integralność danych
    • Podsumowanie
    • Pytania kontrolne
  • Część II. Proces projektowania
  • 4. Przegląd koncepcyjny
    • Tematy omówione w tym rozdziale
    • Dlaczego ważna jest realizacja całego procesu projektowania
    • Formułowanie definicji celu i założeń wstępnych
    • Analiza istniejącej bazy danych
    • Tworzenie struktur danych
    • Określanie i ustalanie relacji w tabelach
    • Określanie i definiowanie reguł biznesowych
    • Określanie i definiowanie widoków
    • Kontrola integralności danych
    • Podsumowanie
    • Pytania kontrolne
  • 5. Rozpoczęcie procesu projektowania
    • Tematy omówione w tym rozdziale
    • Przeprowadzanie wywiadów
      • Wytyczne dotyczące rozmówców
      • Wytyczne dotyczące osoby przeprowadzającej wywiad
    • Formułowanie definicji celu
      • Poprawnie sformułowana definicja celu
      • Układanie definicji celu
    • STUDIUM PRZYPADKU: FORMUŁOWANIE DEFINICJI CELU
    • Formułowanie założeń wstępnych
      • Poprawnie sformułowane założenia wstępne
      • Układanie założeń wstępnych
    • STUDIUM PRZYPADKU: OKREŚLANIE ZAŁOŻEŃ WSTĘPNYCH
    • Podsumowanie
    • Pytania kontrolne
  • 6. Analiza istniejącej bazy danych
    • Tematy omówione w tym rozdziale
    • Poznanie istniejącej bazy danych
      • Papierowe bazy danych
      • Odziedziczone bazy danych
    • Przeprowadzenie analizy
      • Spojrzenie na sposób gromadzenia danych
    • Spojrzenie na sposób prezentowania informacji
    • Przeprowadzanie wywiadów
      • Podstawowe techniki przeprowadzania wywiadów
        • Znaczenie pytań
        • Proces przeprowadzania wywiadów
        • Określanie podmiotów
        • Określanie cech
      • Zanim rozpoczniesz przeprowadzanie wywiadów
    • Wywiady z użytkownikami
      • Przegląd typów danych i sposobów ich wykorzystania
      • Przegląd próbek
      • Przegląd wymagań informacyjnych
        • Istniejące wymagania informacyjne
        • Dodatkowe wymagania informacyjne
        • Przyszłe wymagania informacyjne
    • Wywiady z kierownictwem
      • Przegląd obecnych wymagań informacyjnych
      • Przegląd dodatkowych wymagań informacyjnych
      • Przegląd przyszłych wymagań informacyjnych
      • Przegląd ogólnych wymagań informacyjnych
    • Stworzenie kompletnej listy pól
      • Wstępna lista pól
        • Krok 1. Przegląd i dopracowywanie listy cech
          • Porządkowanie elementów o tej samej nazwie
          • Porządkowanie elementów reprezentujących te same cechy
          • Upewnienie się, że elementy reprezentują cechy podmiotów
        • Krok 2. Określ, czy w którejkolwiek z próbek znajdują się nowe cechy
          • Dygresja listy wartości
      • Lista pól obliczeniowych
      • Przegląd obu list wraz z pracownikami i kierownictwem
    • Studium przypadku: analiza bazy danych
    • Podsumowanie
    • Pytania kontrolne
  • 7. Tworzenie struktur tabel
    • Tematy omówione w tym rozdziale
    • Definiowanie wstępnej listy tabel
      • Identyfikacja domniemanych podmiotów
      • Korzystanie z listy podmiotów
        • Krok 1. Eliminowanie duplikatów
        • Krok 2. Rozwiązanie problemów z pozycjami, które reprezentują ten sam podmiot
        • Krok 3. Połączenie elementów na liście podmiotów z elementami na wstępnej liście tabel
      • Korzystanie z założeń wstępnych
    • Definiowanie ostatecznej listy tabel
      • Dopracowywanie nazw tabel
        • Wytyczne dotyczące tworzenia nazw tabel
      • Określanie typów tabel
      • Redagowanie opisów tabel
        • Wytyczne dotyczące redagowania opisu tabel
        • Wywiady z użytkownikami i kierownictwem
    • Przypisywanie pól do tabel
    • Dopracowywanie pól
      • Poprawianie nazw pól
        • Wytyczne tworzenia nazw pól
      • Korzystanie z idealnego pola do eliminowania anomalii
        • Warunki idealnego pola
      • Eliminacja pól wieloczęściowych
      • Eliminacja pól wielowartościowych
    • Dopracowywanie struktur tabel
      • Kilka słów o nadmiarowych danych i duplikatach pól
      • Wykorzystanie warunków idealnej tabeli w celu dopracowania struktur tabel
        • Warunki idealnej tabeli
        • Eliminowanie niepotrzebnych duplikatów pól
      • Wyznaczanie tabel-podzbiorów
        • Dopracowywanie niezidentyfikowanych wcześniej tabel-podzbiorów
    • Studium przypadku: określanie struktur tabel
    • Podsumowanie
    • Pytania kontrolne
  • 8. Klucze
    • Tematy omówione w tym rozdziale
    • Dlaczego klucze są ważne
    • Definiowanie kluczy dla tabel
      • Klucze kandydujące
        • Warunki klucza kandydującego
        • Sztuczne klucze kandydujące
      • Klucze główne
        • Warunki klucza głównego
      • Klucze zastępcze
      • Pola niekluczowe
    • Integralność na poziomie tabeli
    • Przegląd wstępnych struktur tabel
    • Studium przypadku: tworzenie kluczy
    • Podsumowanie
    • Pytania kontrolne
  • 9. Specyfikacje pól
    • Tematy omówione w tym rozdziale
    • Dlaczego specyfikacje pól są ważne
    • Integralność na poziomie pól
    • Anatomia specyfikacji pól
      • Elementy ogólne
        • Nazwa pola
        • Tabela-rodzic
        • Typ specyfikacji
        • Specyfikacja źródłowa
        • Dzielone z
        • Alias(y)
        • Opis
      • Elementy fizyczne
        • Typ danych
        • Długość
        • Miejsca dziesiętne
        • Dozwolone znaki
      • Elementy logiczne
        • Typ klucza
        • Struktura klucza
          • Unikatowość
          • Dopuszczanie wartości null
          • Wartości wprowadzone przez
          • Wartość wymagana
          • Zakres wartości
          • Reguły edycji
    • Wykorzystywanie unikatowych, ogólnych i kopiowanych specyfikacji pól
    • Definiowanie specyfikacji pól dla każdego pola w bazie danych
    • Studium przypadku: definiowanie specyfikacji pól
    • Podsumowanie
    • Pytania kontrolne
  • 10. Relacje między tabelami
    • Tematy omówione w tym rozdziale
    • Dlaczego relacje są ważne
    • Rodzaje relacji
      • Relacja jeden do jednego
      • Relacja jeden do wielu
      • Relacja wiele do wielu
        • Problemy z relacjami wiele do wielu
      • Relacja zwrotna
        • Jeden do jednego
        • Jeden do wielu
        • Wiele do wielu
    • Identyfikowanie istniejących relacji
    • Ustanawianie wszystkich relacji
      • Relacje jeden do jednego i jeden do wielu
        • Relacja jeden do jednego
        • Relacja jeden do wielu
        • Opracowywanie pól wielowartościowych raz jeszcze
      • Relacja wiele do wielu
      • Relacje zwrotne
        • Jeden do jednego i jeden do wielu
        • Wiele do wielu
      • Sprawdzanie struktury wszystkich tabel
        • Warunki idealnej tabeli
      • Dokładna analiza wszystkich kluczy obcych
        • Warunki klucza obcego
    • Ustanawianie cech relacji
      • Definiowanie reguły usuwania dla każdej relacji
      • Identyfikowanie rodzaju uczestnictwa każdej z tabel
      • Identyfikowanie stopnia uczestnictwa każdej z tabel
      • Weryfikowanie z użytkownikami i kierownictwem relacji istniejących między tabelami
      • Uwaga końcowa
    • Integralność na poziomie relacji
    • Studium przypadku identyfikowanie i tworzenie relacji
    • Podsumowanie
    • Pytania kontrolne
  • 11. Reguły biznesowe
    • Tematy omówione w tym rozdziale
    • Czym są reguły biznesowe?
      • Rodzaje reguł biznesowych
    • Kategorie reguł biznesowych
      • Reguły biznesowe specyficzne dla pól
      • Reguły biznesowe specyficzne dla relacji
    • Definiowanie i ustanawianie reguł biznesowych
      • Praca z użytkownikami oraz kierownictwem
      • Definiowanie i ustanawianie reguł biznesowych specyficznych dla pola
        • Etap 1. Wybierz tabelę
        • Etap 2. Sprawdź każde pole i oceń, czy potrzebuje ono jakichkolwiek ograniczeń
        • Etap 3. Zdefiniuj dla tego pola niezbędne reguły biznesowe
        • Etap 4. Ustanów reguły, modyfikując odpowiednie elementy specyfikacji pola
        • Etap 5. Określ, jakie czynności pozwalają zweryfikować regułę
        • Etap 6. Zapisz regułę w arkuszu specyfikacji reguł biznesowych
      • Definiowanie i ustanawianie reguł biznesowych specyficznych dla relacji
        • Etap 1. Wybierz relację
        • Etap 2. Przeanalizuj relację i zadecyduj, czy wymaga ona jakichś ograniczeń
        • Etap 3. Zdefiniuj niezbędne dla relacji reguły biznesowe
        • Etap 4. Ustanów regułę, modyfikując odpowiednie cechy relacji
        • Etap 5. Określ, jakie czynności pozwolą zweryfikować regułę
        • Etap 6. Zapisz regułę w arkuszu specyfikacji reguły biznesowej
    • Tabele walidacji
      • Czym są tabele walidacji?
      • Korzystanie z tabel walidacji w celu realizowania reguł biznesowych
    • Sprawdzanie arkuszy specyfikacji reguł biznesowych
    • Studium przypadku: definiowanie i tworzenie reguł biznesowych
    • Podsumowanie
    • Pytania kontrolne
  • 12. Widoki
    • Tematy omówione w tym rozdziale
    • Czym są widoki?
    • Anatomia widoku
      • Widok danych
        • Jednotabelowy widok danych
        • Wielotabelowy widok danych
      • Widok zagregowany
      • Widok walidacji
    • Określanie i definiowanie widoków
      • Praca z użytkownikami i kierownictwem
      • Definiowanie widoków
        • Stosowanie pól obliczeniowych w odpowiednich miejscach
        • Stosowanie kryteriów do filtrowania danych
        • Korzystanie z arkusza specyfikacji widoku w celu opisania widoku
      • Przeglądanie dokumentacji każdego widoku
    • Studium przypadku: określanie i definiowanie widoków
    • Podsumowanie
    • Pytania kontrolne
  • 13. Sprawdzanie integralności danych
    • Tematy omówione w tym rozdziale
    • Dlaczego należy sprawdzać integralność danych?
    • Sprawdzanie i korygowanie integralności danych
      • Integralność na poziomie tabel
      • Integralność na poziomie pól
      • Integralność na poziomie relacji
      • Reguły biznesowe
      • Widoki
    • Kompletowanie dokumentacji bazy danych
    • W końcu zrobione!
    • Studium przypadku wnioski
    • Podsumowanie
  • Część III. Inne problemy projektowania baz danych
  • 14. Czego nie należy robić?
    • Tematy omówione w tym rozdziale
    • Płaskie pliki
    • Projekt na bazie arkusza kalkulacyjnego
      • Rozwiązywanie problemów związanych z przyzwyczajeniami do widoku arkusza kalkulacyjnego
    • Projekt bazy danych pod kątem konkretnego oprogramowania
    • Wnioski końcowe
    • Podsumowanie
  • 15. Naginanie bądź łamanie reguł
    • Tematy omówione w tym rozdziale
    • Kiedy można nagiąć lub złamać reguły?
      • Projektowanie analitycznej bazy danych
      • Poprawianie wydajności obliczeń
        • Czy to się opłaca?
        • Zacznij poprawianie wydajności od innych metod
    • Dokumentowanie działań
    • Podsumowanie
  • 16. Na zakończenie
  • Dodatki
  • A. Odpowiedzi na pytania kontrolne
    • Rozdział 1.
    • Rozdział 2.
    • Rozdział 3.
    • Rozdział 4.
    • Rozdział 5.
    • Rozdział 6.
    • Rozdział 7.
    • Rozdział 8.
    • Rozdział 9.
    • Rozdział 10.
    • Rozdział 11.
    • Rozdział 12.
  • B. Diagram procesu projektowania baz danych
  • C. Wytyczne projektowe
    • Definiowanie i wprowadzanie reguł biznesowych specyficznych dla pól
    • Definiowanie i wprowadzanie reguł biznesowych specyficznych dla relacji
    • Warunki klucza kandydującego
    • Warunki klucza obcego
    • Warunki klucza głównego
      • Reguły tworzenia kluczy głównych
    • Warunki idealnego pola
    • Warunki idealnej tabeli
    • Integralność na poziomie pól
    • Wytyczne tworzenia opisów pól
    • Wytyczne tworzenia opisów tabel
    • Wytyczne tworzenia nazw pól
    • Wytyczne tworzenia nazw tabel
    • Identyfikowanie relacji
    • Identyfikacja wymagań dotyczących widoków
    • Wytyczne dotyczące prowadzonych rozmów
      • Wskazówki związane z uczestnikami
      • Wskazówki dotyczące prowadzącego rozmowę
    • Definicja celu
    • Założenia wstępne
    • Integralność na poziomie relacji
    • Eliminowanie pól wielowartościowych
    • Integralność na poziomie tabel
  • D. Formularze dokumentacyjne
  • E. Symbole używane w diagramach stosowanych w procesie projektowania baz danych
  • F. Przykładowe projekty
  • G. O normalizacji
    • Uwaga...
    • Krótkie przypomnienie
    • W jaki sposób normalizacja jest zintegrowana z metodologią projektowania?
    • Projekt logiczny a projekt fizyczny i implementacja
  • H. Zalecana lektura
  • Słowniczek
  • Literatura
  • Title: Projektowanie baz danych dla każdego. Przewodnik krok po kroku. Wydanie IV
  • Author: Michael J. Hernandez
  • Original title: Database Design for Mere Mortals: 25th Anniversary Edition, 4th Edition
  • Translation: Ireneusz Jakóbik, Radosław Meryk, Katarzyna Żarnowska, Tomasz Walczak
  • ISBN: 978-83-283-8252-7, 9788328382527
  • Date of issue: 2022-02-22
  • Format: Ebook
  • Item ID: projb4
  • Publisher: Helion