Udostępnij za pośrednictwem


Integralność danych

Wymuszanie integralność danych gwarancji jakości w bazie danych.Na przykład, jeśli pracownik jest wprowadzana wartość Identyfikatora pracownika z 123, baza danych nie powinien umożliwić innego pracownika do Identyfikatora z taką samą wartość.Jeśli masz employee_rating kolumna mają mieć wartości z zakresu od 1 do 5, baza danych nie może przyjąć wartość wykracza poza ten zakres.Jeśli tabela ma dept_id kolumna, który przechowuje pracownika działu numer bazy danych powinien umożliwić tylko wartości, które są prawidłowe numery działu w firmie.

Dwa ważne kroki w planowaniu tabele są prawidłowe wartości dla kolumna zidentyfikować i zdecydować, jak wymuszanie integralność danych kolumna.Integralność danych znajduje się na następujące kategorie:

  • Integralność encji

  • Integralność domeny

  • Więzy integralność

  • Integralność zdefiniowane przez użytkownika

Integralność encji

Jednostka integralność definiuje wiersz jako obiekt unikatowe dla danej tabela.Jednostka integralność wymusza integralność kolumn identyfikatora lub klucz podstawowy za pośrednictwem unikatowe indeksy tabela ograniczeń UNIQUE lub klucz podstawowy ograniczenia.

Integralność domeny

Integralność domeny jest ważność wpisów danej kolumna.Można wymusić integralność domena ograniczenia typu przy użyciu typów danych, ograniczenia formatu przy użyciu ograniczeń CHECK i reguły lub ograniczenia zakres możliwych wartości przy użyciu klucza OBCEGO ograniczenia, wyboru ograniczenia, domyślna definicje, nie definicje NULL i reguł.

Integralność referencyjna

Więzy integralność zachowuje zdefiniowane relacje między tabelami, gdy wiersze są wprowadzane lub usunięte.W SQL Server, integralność referencyjnej jest oparty na relacje między kluczami obcymi i klucze podstawowe lub kluczy obcych i unikatowe klucze poprzez ograniczenia klucza OBCEGO i wyboru.Więzy integralność zapewnia, że wartości klucz są spójne dla tabel.Tego rodzaju spójności wymaga, że nie istnieją żadne odwołania do nieistniejącego wartości i że zmienia wartość klucz, wszystkie odwołania do tego zmiana konsekwentnie całej bazy danych.

Podczas wymuszania więzów integralność, SQL Server uniemożliwia wykonanie poniższych czynności:

  • Dodawanie lub zmiana wierszy w tabeli pokrewnej, jeśli nie ma skojarzonego wiersza tabela podstawowa.

  • Zmiana wartości tabela podstawowa, powodujący oddzielony wiersze w tabeli pokrewnej.

  • Usuwanie wierszy z tabela podstawowa, jeśli są pasujące powiązane wiersze.

Na przykład z Sales.SalesOrderDetail i Production.Product tabel w AdventureWorks2008R2 więzy integralność bazy danych jest oparta na relacji klucz obcy (IDProduktu) w Sales.SalesOrderDetail tabela oraz klucz podstawowy (IDProduktu) w Production.Product tabela.Relacja ta sprawia, że zamówienia sprzedaży nigdy nie może odwoływać się produktu, który nie istnieje w Production.Product tabela.

Integralność referencyjna uzyskana przy użyciu kluczy obcych/podstawowych

Integralność zdefiniowane przez użytkownika

Integralność użytkownika pozwala zdefiniować reguły biznesowe szczególnych, które nie należą do jednej z innych kategorii integralności.Wszystkie kategorie integralność obsługuje integralność zdefiniowanych przez użytkownika.Obejmuje to wszystkie kolumna -poziom i tabela -poziom ograniczenia CREATE tabela, procedur przechowywanych i wyzwalaczy.