Skip to main content

Hoe referentiële integriteit zorgt voor consistentie van databases

20090926 Overview Of Divine Truth - Secrets Of The Universe S1P2 (April 2025)

20090926 Overview Of Divine Truth - Secrets Of The Universe S1P2 (April 2025)
Anonim

Databases gebruiken tabellen om de informatie die ze bevatten te ordenen. Ze lijken op spreadsheets, zoals Excel, maar zijn veel beter geschikt voor geavanceerde gebruikers. Databases werken met het gebruik van primaire sleutels en externe sleutels, die de relatie tussen de tabellen behouden.

Referentiële integriteit is een databasefunctie in relationele databasebeheersystemen. Het zorgt ervoor dat de relaties tussen tabellen in een database accuraat blijven door beperkingen toe te passen om te voorkomen dat gebruikers of applicaties inaccurate gegevens invoeren of verwijzen naar gegevens die niet bestaan.

Hoofdsleutel

De primaire sleutel van een databasetabel is een unieke ID die aan elke record is toegewezen. Elke tabel heeft een of meer kolommen die zijn aangewezen als de primaire sleutel. Een sofinummer kan een primaire sleutel zijn voor een databaseoverzicht van werknemers omdat elk sofinummer uniek is.

Vanwege privacyredenen is een toegewezen bedrijfsidentificatienummer echter een betere keuze om als primaire sleutel voor werknemers te fungeren. Sommige databasesoftware, zoals Microsoft Access, wijst de primaire sleutel automatisch toe, maar de willekeurige sleutel heeft geen echte betekenis. Het is beter om een ​​sleutel met betekenis te gebruiken in de geschiedenis.

De eenvoudigste manier om referentiële integriteit af te dwingen is niet om wijzigingen aan een primaire sleutel toe te staan.

Vreemde sleutel

Een foreign key is een identifier in een tabel die overeenkomt met de primaire sleutel van een andere tabel. De externe sleutel maakt de relatie met een andere tabel. Referentiële integriteit verwijst naar de relatie tussen deze tabellen.

Wanneer een tabel een externe sleutel heeft naar een andere tabel, geeft het concept van referentiële integriteit aan dat u geen record mag toevoegen aan de tabel die de externe sleutel bevat, tenzij er een overeenkomstige record is in de gekoppelde tabel. Het bevat ook de technieken die cascaderupdate en trapsgewijze verwijdering worden genoemd, die ervoor zorgen dat wijzigingen in de gekoppelde tabel worden weergegeven in de primaire tabel.

Voorbeeld van referentiële integriteitsregels

Denk bijvoorbeeld aan de situatie waarin u twee tabellen hebt: Medewerkers en Managers. De tabel Werknemers heeft een kenmerk voor een buitenlandse sleutel met de naam ManagedBy, dat verwijst naar de record voor de manager van elke medewerker in de tabel Managers. Referentiële integriteit dwingt de volgende drie regels af:

  • U kunt geen record toevoegen aan de tabel Werknemers, tenzij het kenmerk ManagedBy verwijst naar een geldige record in de tabel Managers. Referentiële integriteit voorkomt het invoegen van onjuiste gegevens in een tabel. Elke bewerking die niet voldoet aan de regel voor referentiële integriteit mislukt.
  • Als de primaire sleutel voor een record in de tabel Managers wordt gewijzigd, worden alle bijbehorende records in de tabel Werknemers gewijzigd met behulp van een trapsgewijze update.
  • Als een record in de tabel Managers wordt verwijderd, worden alle bijbehorende records in de tabel Werknemers verwijderd met behulp van een trapsgewijze verwijdering.

Voordelen van referentiële integriteitsbeperkingen

Het gebruik van een relationeel databasebeheersysteem met referentiële integriteit biedt verschillende voordelen:

  • Voorkomt het invoeren van dubbele gegevens
  • Voorkomt dat een tabel naar een niet-bestaand veld in een andere tabel wijst
  • Garandeert de consistentie tussen "samengestelde" tabellen
  • Voorkomt het verwijderen van een record met een waarde waarnaar wordt verwezen door een externe sleutel in een andere tabel
  • Voorkomt de toevoeging van een record aan een tabel die een externe sleutel bevat, tenzij er een primaire sleutel in de gekoppelde tabel staat