Bazy danych – podstawowe pojęcia – cd

Baza danych – jest to zbiór danych określonej strukturze zapisany w nieulotnej pamięci, mogący zaspokoić potrzeby wielu użytkowników korzystających z niego w sposób selektywny w dogodnym dla siebie czasie.

System Zarządzania Baza Danych (SZBD) – jest to oprogramowanie umożliwiające współpracę użytkownika z baza danych.

System bazy danych - składa się z bazy danych, systemu zarządzania bazą danych oraz dodatkowych aplikacji wspomagających.

Transakcja - jest sekwencją instrukcji, po wykonaniu której spójna baza danych nadal zachowuje swą spójność.

Spójność bazy danych - jest to zgodność z modelowaną rzeczywistością.

Istotne zagadnienia związane z SZBD:

  • opis danych,
  • formy korzystania z bazy danych,
  • integralność danych,
  • poufność danych,
  •  współbieżność dostępu,
  • niezawodność.

Język opisu danych  – jest narzędziem służącym do utworzenia schematu pojęciowego i jest on ściśle związany z modelem. Umożliwia on definiowanie klas obiektów oraz powiązań miedzy nimi.

Język manipulowania danymi służy do:

  • wprowadzania,
  • modyfikowania,
  • usuwania,
  • wyszukiwania,
  • formułowania zapytań.
Jednym z bardziej istotnych postulatów stawianych bazom danych jest niezależność programów od danych.
Poziom reprezentacji baz danych:
  • wewnętrzny ( sposób organizacji danych w pamięci zewnętrznej)
  • pojęciowy (model – abstrakcyjny opis rzeczywistości)
  • zewnętrzny (postać danych widziana z punktu widzenia programu użytkowego).

Sposoby reprezentacji danych na poziomie pojęciowym (modele):

  • hierarchiczny,
  • sieciowy,
  • relacyjny,
  •  obiektowy,
  • relacyjno – obiektowy.

Trwałe dane mogą byc przechowywane w:

  • plikach,
  • w bazie danych (relacyjnej, obiektowej, lub relacyjno – obiektowej)

Zaletami relacyjnych baz danych są:

  • wysoka efektywność i stabilność,
  • możliwość zapewnienia spójności danych poprzez automatyczne sprawdzanie warunków integralności,
  • wielodostępowość,
  • rozszerzalność,
  • możliwość rozproszenia danych,
  • możliwość kaskadowego usuwania powiązanych obiektów.

Projektując relacyjną bazę danych należy:

  • określić sposób relacji związków pomiędzy klasami/encjami,
  • określić typy kolumn w relacjach odpowiadających polom/atrybutom klas/encji.
  • określić kolumny identyfikujące dla każdej relacji, mogą to być istniejące kolumny (grupy kolumn) lub sztuczne kolumny identyfikujące,
  • znormalizować strukturę bazy danych,
  • określić indeksy poszczególnych relacji.

Jeżeli projektowanie odbywa się na podstawie modelu obiektowego, etapem pośrednim możne być transformacja fragmentu modelu obejmującego (wybrane) klasy trwałe do modelu związku encji.

RELACYJNE BAZY DANYCH

Encja - odzwierciedla materialny lub niematerialny obiekt świata rzeczywistego opisany w danym schemacie pojęciowym (modelu).
Przykłady encji:

  •  ”Ania”
  • „Kowalski”
  • 1.56
  • 5
  • „zielony”
  • 2013-09-15
Encje tego samego typu można grupować w zbiory encji:
Przykład encji:
  • wszyscy uczniowie,
  • wszyscy nauczyciele,
  • wszystkie sale lekcyjne.
Każdy zbiór posiada unikalny identyfikator.
Sposoby definiowania zbiorów:
  1. ekstencjonalny (wyliczenie elementów) {męski, żeński},
  2. intensjonalny ([podanie wartści) {xεOsoba | płeć (x)=męska }
  3. za pomocą iloczynu kartezjańskiego X*Y*Z; (x,y,z); xεX itd)
  4. za pomocą operatorów: sumy, przecięcia i różnicy zbiorów.
Relacja - może być przeglądana jak tabela, gdzie każda krotka jest przedstawiana jako wiersz, a każda kolumna jest częścią krotki odpowiada atrybutowi.
Relacyjna baza danych - jest zbiorem relacji spełniających warunki integralności dla każdej relacji i między nimi.