07. Integralność danych

Pojęcie: Integralność danych: inaczej spójność danych, jest to funkcja w SZBD, która gwarantuje, że dane nie zostaną usunięte lub zmienione w nieautoryzowany sposób. W SZBD powinny istnieć mechanizmy, które pozwolą zabezpieczyć dane przed skutkami awarii zasilania, sprzętu lub oprogramowania. Zachowanie spójności danych powinny gwarantować systemy chroniące dane również przed błędami pojawiającymi się w chwilach współbieżnego dostępu do tej samej informacji.

Pojęcie: Integralność semantyczna polega na utrzymaniu ograniczeń nakładanych na dane m.in.:

  • w określonej kolumnie tabeli muszą znajdować się wyłącznie dane zgodne z typem danych kolumny, np. tylko liczby całkowite
  • w kolumnie nie mogą występować braki wartości – puste miejsca NULL

Pojęcie: Integralność referencyjna polega na wprowadzeniu i utrzymaniu powiązań pomiędzy tabelami. Związki te tworzy się przez umieszczenie kolumny pełniącej rolę klucza głównego tabeli w innej tabeli, co nadaje kolumnie funkcję klucza obcego. Reguły integralności referencyjnej determinują, czy wartości klucza obcego mają odpowiadać wartościom klucza głównego (powiązanej tabeli), czy mogą przyjmować wartości NULL.

Pojęcie: Ograniczenia integralności statyczne odnoszą się do bieżącego stanu bazy danych, np. na kolumnę wiek zostało nałożone takie ograniczenie CHECK (wiek<200). Nałożenie tego ograniczenia podczas tworzenia tabeli spowoduje, że w kolumnie wiek wartość nigdy nie będzie większa niż 200 w trakcie nakładania ograniczenia i w przyszłości.

Pojęcie: Więzy integralności dynamiczne to takie, które przeciwdziałają zmianom, ponieważ związane są z przejściem bazy danych z jednego stanu w drugi. Oznacza to, że odnoszą się do bazy danych w aspekcie temporalnym. Przykładem takich więzów może być wymaganie, aby wiek pracowników nigdy nie malał. Jeżeli wiek pracownika po pewnym czasie wzrośnie, to wartość kolumny wiek nie może nigdy się zmniejszyć, ponieważ nikt nie staje się młodszy. Więzy dynamiczne nazywane są również więzami przejść.

Ochrona integralności danych polega również na zapewnieniu, że dane nie ulegną zniekształceniu podczas wykonywania na nich operacji. Spójność danych związana jest z ich dokładnością – dane dokładnie odzwierciedlają modelowaną rzeczywistość. Oznacza ona również ich prawdziwość oraz aktualizowanie, gdy zmienia się rzeczywistość modelowana w bazie danych.