Databaseintegritet

Den stabile version blev tjekket ud den 4. oktober 2022 . Der er ubekræftede ændringer i skabeloner eller .

Databaseintegritet er overensstemmelsen mellem de tilgængelige oplysninger i databasen  og dens interne logik, struktur og alle eksplicit specificerede regler. Hver regel, der pålægger en eller anden form for begrænsning for en databases mulige tilstand, kaldes en integritetsbegrænsning .

Regeleksempler: delvægt skal være positiv; antallet af tegn i telefonnummeret må ikke overstige 15; forældrenes alder må ikke være mindre end deres biologiske barns alder og så videre.

Begrebet konsistens eller dataintegritet er et nøglebegreb i databaser.

Kuznetsov S. D. [1] :30

Det er klart, at begrænsninger skal erklæres formelt til DBMS , hvorefter DBMS skal håndhæve dem. At erklære begrænsninger er simpelthen et spørgsmål om at bruge de passende databasesprogfaciliteter, og håndhævelse af begrænsninger udføres ved at DBMS kontrollerer opdateringsoperationer, der kan overtræde begrænsningen og deaktivere dem, der gør det. Når en begrænsning oprindeligt erklæres, skal systemet kontrollere, om databasen i øjeblikket opfylder den. Hvis denne betingelse ikke er opfyldt, skal begrænsningen afvises; ellers accepteres det (det vil sige skrevet til systembiblioteket), og fra da af respekteres [2] :338 .

Integritetsmekanismer er en af ​​komponenterne i begrebet datamodellen [3] [4] .

Klassifikation af integritetsbegrænsninger

I teorien om relationelle databaser er det sædvanligt at skelne mellem fire typer af integritetsbegrænsninger [2] :353 :

Et eksempel på en fælles relationsvariabel niveaubegrænsning er en kandidatnøgle ; et eksempel på en almindelig begrænsning på databaseniveau er en fremmednøgle .

Integritet og sandhed af data i databasen

Databasens integritet garanterer ikke pålideligheden (sandheden) af informationen indeholdt i den, men sikrer i det mindste plausibiliteten af ​​denne information, idet den afviser åbenlyst usandsynlige, umulige værdier. Man bør således ikke forveksle databasens integritet (konsistens) med databasens sandhed. Sandhed og konsekvens er ikke det samme [2] :351 .

Pålidelighed (eller sandhed) er overensstemmelsen mellem de fakta, der er gemt i databasen, til den virkelige verden. For at bestemme pålideligheden af ​​databasen er det naturligvis nødvendigt at have fuldstændig viden om både indholdet af databasen og den virkelige verden. For at bestemme databasens integritet kræves kun viden om indholdet af databasen og de regler, der er specificeret for den. Derfor kan DBMS ikke garantere, at der kun er sande udsagn i databasen; alt det kan gøre er at sikre, at der ikke er nogen data, der overtræder integritetsbegrænsningerne (det vil sige, at de ikke indeholder nogen data, der er uforenelige med disse begrænsninger) [2] :351 .

Af det faktum, at dataene er korrekte, følger det, at de er konsistente (men ikke omvendt), og af det faktum, at dataene er inkonsistente, følger det, at de er forkerte (men ikke omvendt). Her betyder ordet "korrekt", at databasen indeholder de korrekte data, hvis og kun hvis de fuldt ud afspejler den sande tilstand i den virkelige verden [2] :351 .

Se også

Noter

  1. Kuznetsov S. D. Fundamentals of databases. - 2. udg. - M. : Internet University of Information Technologies; BINOMIAL. Videnlaboratoriet, 2007. - 484 s. - ISBN 978-5-94774-736-2 .
  2. 1 2 3 4 5 Dato KJ Introduktion til databasesystemer = Introduktion til databasesystemer. - 8. udg. - M .: Williams , 2005. - 1328 s. - ISBN 5-8459-0788-8 (russisk) 0-321-19784-4 (engelsk).
  3. Codd, EF "Data Models in Database Management. Proc. Workshop in Data Abstraction, Databases and Conceptual Modeling (Michael L. Brodie og Stephen N. Zilles, red.), Pingree Park, Colo. (juni 1980): ACM SIGART Nyhedsbrev nr. 74 (januar 1981) ACM SIGMOD Record 11(2), februar 1981 ACM SIGPLAN Notices 16(1), januar 1981
  4. Dato K.J. Den relationelle model vil bestå tidens prøve // ​​Intelligent Enterprise, 1. juni 1999, bind 2, nummer 8)