- trwałość danych - dane przechowywane w bazie danych nie są ulotne. W praktyce uznaje się, że dane w bazie danych będą przechowywane przez z góry nieokreślony okres czasu.
W teorii baz danych można także wyróżnić bazy nietrwałe. Są to dane pobierane z bazy danych przez aplikacje w celu np. wydrukowania raportu, przeprowadzenia analizy itp. - część intensjonalna i ekstensjonalna bazy danych - część intensjonalna jest zbiorem definicji, które opisują strukturę bazy danych, natomiast część ekstensjonalna to zbiór danych zawartych w bazie danych.
Część ekstensjonalna
Schemat: uniwersytet
- Moduły
- Systemy relacyjnych baz danych
- Projektowanie relacyjnych baz danych
- Studenci
- Jan Kowalski, urodzony 1980-07-01
- Piotr Nowak, urodzony 1980-05-10
- Zaliczający
- Jan Kowalski zalicza Systemy relacyjnych baz danych
Część intensjonalna
Schemat: uniwersytet
- Klasy
- Moduły - kursy prowadzone w semestrze
- Studenci - osoby zaliczające moduły
- Związki
- Studenci zaliczają Moduły
- Atrybuty
- Moduły mają nazwy
- Studenci mają nazwiska
- Moduły
- spójność (integralność) bazy danych - jest deklarowana jako poprawność danych z punkty widzenia pewnych przyjętych kryteriów. W praktyce wyróżnia się następujące kryteria dotyczące spójności, czyli integralności danych:
- zgodność z rzeczywistością (wierne odzwierciedlenie rzeczywistości) - oznacza, że dane w bazie danych muszą stanowić wierne odwzorowanie modelowanego kształtu rzeczywistości. Jeśli dane się zmieniają, to w bazie danych też muszą się zmieniać.
Dla przykładu, jeśli baza danych przechowuje dane o uczniu, który rzeczywiście chodzi do danej szkoły, to jeśli zmienią się jakieś dane osboowe, to muszą znaleźć odzwierciedlenie w bazie danych. - integralność semantyczna, polegająca na spełnieniu ograniczeń nałożonych przez programistów bazy danych na dane, np. że w danym polu muszą się znaleźć dane z określonej dziedziny (w sensie matematycznym), np. w polu ocena_końcowa można wpisać oceny
<1;6>
. Można też stosować ograniczenia w sensie temporalnym, tzn. np. że wiek pracownika czy jego staż nie może się zmniejszać w trakcie czasu - integralność referencyjna - polega na wprowadzeniu i kontrolowaniu powiązań pomiędzy tabelami, np. aby w tabeli wypożyczenia nie można było wpisać ID_klienta lub ID_auta, których nie ma w stosownych tabelach nadrzędnych
- zgodność z rzeczywistością (wierne odzwierciedlenie rzeczywistości) - oznacza, że dane w bazie danych muszą stanowić wierne odwzorowanie modelowanego kształtu rzeczywistości. Jeśli dane się zmieniają, to w bazie danych też muszą się zmieniać.
- brak anomalii wynikających ze współbieżnego dostępu do danych - w przypadku baz danych, w których w tym samym czasie korzysta wielu użytkowników.
UWAGA: węzły integralności można podzielić na statyczne i dynamiczne.
Węzły statyczne odnoszą się do bieżącego stanu bazy danych, np. masa ciała nie może być ujemna, wiek pacjenta mieści się w granicach<0;130>
.
Dynamiczne węzły integralności odnoszą się do bazy danych w ujęciu temporalnym, np. ilość absolwentów szkoły nie może maleć w czasie. - opieranie się na jednym, spójnym systemie reprezentacji danych opisujących fragment rzeczywistości, czyli modelu danych
- musi zapewniać ochronę danych
- niezależność danych - dane są niezależne od programów, które służą do jej obsługi. O niezależności danych mówimy także wtedy, gdy mamy na myśli, że dane przechowywane w bazie danych powinny być niezależne względem siebie (jeśli wprowadzę nowy rekord, to nie może on być zależny od innych rekordów przechowywanych w bazie danych)