Hvad er dataintegritet?

i denne æra, hvor flere og flere data gemmes og produceres end nogensinde, er det vigtigt, at integriteten af vores data bevares. Forestil dig, at vi har nogle medarbejdere, der arbejder for en MNC. Disse medarbejdere arbejder for to afdelinger siger, salg og finansiering. Begge disse afdelinger har deres egne databasetabeller. Så skal vi gemme posten over disse medarbejdere to gange? Nej, dataintegritet siger, at der ikke skal være duplikatdata i vores database., Der bør ikke være nogen redundans, og vores data skal være konsistente i hele databasen. Men hvordan kan dette opnås? Der er forskellige dataintegritetsbegrænsninger, som DBMS leverer til os. Så lad os se dem i detaljer.

dataintegritet

dataintegritet har korrekte og nøjagtige data i din database. Når vi gemmer data i databasen, ønsker vi ikke at gentage værdier, vi ønsker ikke forkerte værdier eller ødelagte forhold mellem tabeller. Så, lad os forstå gennem et eksempel, at hvordan brudte relationer kan forårsage data uoverensstemmelse.,eksempel: lad os forestille os, at vi har en kundedatabase, hvor vi har to tabeller, dvs. ‘customer_table'(customer_id, customer_name, purchue_id) og ‘purchue_table'(purchue_id, purchhased_item). Disse to tabeller er relateret således, at hvis et køb er foretaget af kunden så at data for den købte vare vil blive gemt i purchase_table. Så hvis vi har en registrering af en købt vare i purchase_table, skal dette køb foretages af en kunde, der er til stede i customer _table., Lad os nu overveje en situation, hvor købstabellen siger, at en vare er købt af en customer_id siger 10, men at customer_id ikke findes i customer_table. Det er ikke muligt, at et køb sker uden en kunde. En sådan situation kunne være opstået, fordi kundens data blev fjernet fra customer_table. Så hvis kundens data fjernes fra kundetabellen, skal de tilsvarende data også fjernes fra købstabellen. Derfor skal ændringerne i databasen opdateres konsekvent for at opretholde dataintegritet.,

dataintegritet kan opretholdes ved hjælp af begrænsninger. Disse begrænsninger definerer de regler, hvorefter operationer som updation, sletning, Indsætninger osv. skal udføres for at opretholde dataintegriteten. Der er hovedsageligt fire typer dataintegritet:

  1. Domæneintegritet
  2. Enhedsintegritet
  3. Referenceintegritet
  4. brugerdefineret integritet

Domæneintegritet

domæne refererer til området for acceptable værdier. Det henviser til det interval af værdier, som vi vil acceptere og gemme i en bestemt kolonne i en database., De tilgængelige datatyper er hovedsageligt heltal, tekst, dato osv. Enhver post, som vi gør for en kolonne skal være tilgængelig i domænet for datatypen.eksempel: hvis vi skal gemme medarbejdernes løn i ’employee_table’, kan vi sætte begrænsninger for, at det kun skal være et heltal. Enhver anden post end heltal som tegn ville ikke være acceptabel, og når vi forsøger at give input som dette, vil DBMS producere fejl.

Enhedsintegritet

hver række for en enhed i en tabel skal identificeres entydigt, dvs., idf nogle post gemmes i databasen, så denne post skal identificeres entydigt fra andre. Dette gøres ved hjælp af primære nøgler. Entitetsbegrænsningen siger, at værdien af den primære nøgle ikke skal være NULL. Hvis værdien af den primære nøgle er NULL, kan vi ikke entydigt identificere rækkerne, hvis alle andre felter er de samme. Også ved hjælp af primær nøgle kan vi entydigt identificere hver post.eksempel: hvis vi har en kundedatabase og customer_table er til stede der med attributter som alder og navn. Derefter skal hver kunde identificeres entydigt., Der kan være to kunder med samme navn og samme alder, så der kan være forvirring, mens du henter dataene. Hvis vi henter data fra kunden ved navn’ Angel’, har to rækker dette navn, og der ville være forvirring. Så for at løse disse problemer er primære nøgler tildelt i hver tabel, og den identificerer entydigt hver post i tabellen.

Referenceintegritet

Referenceintegritet bruges til at opretholde datakonsistensen mellem to tabeller., Regler er lavet i databasestrukturen om, hvordan udenlandske nøgler skal bruges til at sikre, at ændringer, Tilføjelse og sletning i databasen opretholder dataintegriteten. De referentielle integritet begrænsninger, at hvis en fremmed nøgle i den første tabel refererer til den primære nøgle i den anden tabel derefter hver værdi af fremmed nøgle i den første tabel skal enten være null eller til stede i den anden tabel.

Eksempel: Lad os antage, at vi har to tabeller studerende(student_id, navn, alder, course_id) og kursus(course_id, course_name, varighed)., Nu, hvis nogen course_id er til stede i elevtabellen, som ikke er der i kursustabellen, er dette ikke tilladt. Course_id i studenttabellen skal enten være null eller hvis nogen course_id er til stede i studenttabellen, skal den også være til stede i kursustabellen. Sådan opretholdes referenceintegriteten.

brugerdefineret integritet

Nogle gange er disse tre integritet, dvs.domæne, referentiel og enhedsintegritet, ikke nok til at opretholde dataintegriteten., En sådan integritet implementeres typisk gennem triggere og lagrede procedurer. Udløsere er en blok af udsagn, der udføres automatisk, hvis der opstår foruddefinerede begivenheder.Eksempel1: når en ny række indsættes i en student_table, der har karakterer af forskellige emner af studerende, beregnes og gemmes automatisk nyt gennemsnit.

Vi kan også definere nogle brugerdefinerede begrænsninger og specifikke forretningsregler her.Eksempel2: hvis vi opretter en tabel til registrering, og vi ønsker, at brugerens alder skal være større end 21., En sådan type begrænsning er indstillet af brugeren.

Example3: Lad os antage, at vi har en employee_table med attributter som emp_id, emp_name, job_name, løn, mobile_no. Her har vi begrænsninger for, at en medarbejders id altid skal starte med nogle specifikke tegn som ‘AfterAcademy’ og derefter efterfulgt af cifre. Så enhver post, der ikke følger denne begrænsning, ville ikke være acceptabel.

så i dag lærte vi om dataintegritet og hvordan det hjælper med at opretholde dataintegriteten. Håber du har lært noget nyt i dag.