Hva er Data Integritet?

I denne epoken hvor mer og mer informasjon blir lagret og produsert enn noensinne er det viktig at integriteten av våre data er bevart. Tenk deg at vi har noen ansatte som arbeider for et MNC. Disse ansatte arbeider i to avdelinger si, salg og økonomi. Begge disse avdelingene har sin egen database tabeller. Deretter trenger vi å lagre oppføringen av disse ansatte to ganger? Nei, dataintegritet sier at det bør være ingen dupliserte data i vår database., Det bør være ingen redundans, og våre data må være konsekvent gjennom hele databasen. Men, hvordan kan dette oppnås? Det er ulike data integritet begrensninger gitt til oss av DBMS. Så, la oss se på dem i detalj.

Data Integritet

Data Integritet er å ha korrekte og nøyaktige data i databasen. Når vi er lagring av data i databasen vil vi ikke gjenta verdier, ønsker vi ikke feil verdier eller brutte relasjoner mellom tabeller. Så, la oss forstå gjennom et eksempel som hvordan brutt relasjoner kan føre til at data inkonsekvens.,

Eksempel: La oss tenke at vi har en kunde database der vi har to tabeller jeg.e ‘customer_table'(customer_id, customer_name, purchase_id) og ‘purchase_table'(purchase_id, purchhased_item). Disse to tabellene er relatert slik at hvis noen kjøpet er gjort av kunden så at data for det kjøpte elementet vil bli lagret i purchase_table. Så, hvis vi har en oppføring for et kjøpt objekt i purchase_table da at kjøpet må gjøres av noen som kunden til stede i kundens _table., Nå, la oss se på en situasjon hvor kjøpet tabellen sier at en vare er kjøpt av en customer_id si 10 men at customer_id ikke finnes i den customer_table. Det er ikke mulig at et kjøp er gjort uten en kunde. En slik situasjon kunne ha oppstått fordi data om kunden ble fjernet fra customer_table. Så, hvis data om kunden er fjernet fra kunden tabell deretter den tilsvarende data bør også fjernes fra kjøpet bordet. Derfor endringer i databasen bli oppdatert konsekvent for å opprettholde dataintegritet.,

Data Integritet kan opprettholdes ved hjelp av begrensninger. Disse begrensningene definere regler i henhold til hvilke operasjoner som updation, sletting, innskudd etc. må utføres for å opprettholde dataintegritet. Det er hovedsakelig fire typer Data Integritet:

  1. Domene Integritet
  2. Enhet Integritet
  3. referanseintegritet
  4. brukerdefinert Integritet

Domene Integritet

Domene henviser til omfanget av akseptable verdier. Det refererer til ulike verdier som vi skal ta imot og lagre i en bestemt kolonne i en database., Typer data tilgjengelig er i hovedsak heltall, tekst, dato osv. En oppføring som vi sørger for en kolonnen skal være tilgjengelig i domenet av datatypen.

Eksempel: Hvis vi har til å lagre lønnen til de ansatte i «employee_table’ så vi kan sette begrensninger for at det skal bare være et HELTALL. Noen entry andre enn heltall som tegn ikke ville være akseptabelt, og når vi prøver å gi innspill som dette, DBMS vil gi feil.

Enhet Integritet

Hver rad for en entitet i en tabell bør være entydig identifisert dvs., idf noen rekord er lagret i databasen da at posten skal være entydig identifisert fra andre. Dette er gjort med hjelp av primærnøklene. Enheten begrensning sier at verdien av den primære nøkkelen burde ikke være NULL. Hvis verdien av den primære nøkkelen er NULL, kan vi ikke identifisere rader hvis alle andre felt er det samme. Også, med hjelp av primær nøkkel, kan vi identifiserer hver post.

Eksempel: Hvis vi har en kunde database og customer_table er til stede er det med egenskaper som alder og navn. Deretter hver kunde bør være entydig identifisert., Det kan være to kunder med samme navn og samme alder, så det kan være forvirring mens gjenopprette data. Hvis vi hente data om kunden som heter «Angel» og så to rader har dette navnet og det ville være forvirring. Så, for å løse dette spørsmål primære tastene er tildelt i hver tabell, og det er unikt identifiserer hver post i tabellen.

referanseintegritet

referanseintegritet er brukt til å vedlikeholde data konsistens mellom to bord., Reglene er laget i database struktur om hvordan utenlandske nøkler bør brukes til å sikre at endringer, tillegg og sletting i databasen opprettholde dataintegritet. Den referanseintegritet begrensninger si at hvis en utenlandsk tast inn den første tabellen refererer til primærnøkkelen i den andre tabellen og deretter hver verdi av utenlandske nøkkel i den første tabellen bør enten være null eller er til stede i den andre tabellen.

Eksempel: La oss anta at vi har to bord av studenten(student_id, navn, alder, course_id) og kurs(course_id, course_name, varighet)., Nå, hvis noen course_id er til stede i student-tabellen som ikke er der i løpet tabellen, så dette er ikke tillatt. Den course_id i student-tabellen bør enten være null eller hvis noen course_id er til stede i student-tabellen så bør det også være til stede i løpet bordet. Dette er hvordan referanseintegritet er opprettholdt.

brukerdefinert Integritet

noen Ganger er disse tre jeg integritet.e-domenet, referensiell og enhet integritet er ikke nok til å opprettholde dataintegritet., Slike integritet er vanligvis implementert gjennom triggere og lagrede prosedyrer. Triggere er en blokk med uttalelser som utfører automatisk hvis noen forhåndsdefinerte hendelser oppstår.

inn eksempel 1: Når en ny rad settes inn i en student_table som har preg av ulike fagene elevene deretter automatisk ny gjennomsnitt er også beregnes og lagres.

Vi kan også definere noen brukerdefinerte begrensninger og spesifikke virksomhet reglene her.

Example2: Hvis vi skal lage en tabell for registrering og vi vil brukerens alder bør være større enn 21., En slik type av tvang er angitt av brukeren.

Example3: La oss anta at vi har en employee_table med attributter som emp_id, emp_name, job_name, lønn, mobile_no. Her har vi begrensninger som id for en arbeidstaker bør alltid starte med noen spesifikke tegn som ‘AfterAcademy’ og deretter fulgt av sifre. Så, en oppføring som ikke følger denne begrensningen ville ikke være akseptabelt.

Så, i dag har vi lært om data integritet og hvordan det hjelper i å opprettholde dataintegritet. Håper du lærte noe nytt i dag.