Bevare referentiel integritet i databasemodeldiagrammer

Hvad vil du foretage dig?

Få oplysninger om reglerne til referentiel integritet

Angive handlinger for referentiel integritet

Angive en standardværdi for en kolonne

Vise referentiel integritet vha. notation

Få oplysninger om reglerne til referentiel integritet

Med reglerne til referentiel integritet forhindres, at brugere ved et uheld fjerner tilknytningen mellem relaterede kolonner.

Et eksempel kan være en database kaldet Bøger med to tabeller kaldet Titler og Forfattere. I dette eksempel har hver titel kun én forfatter, men hver forfatter kan have flere titler, så der her oprettes en en-til-mange-relation. Tabellen på "en"-siden af relationen kaldes den overordnede tabel. Tabellen på "mange"-siden kaldes den underordnede tabel.

Ved hjælp af en forespørgsel indsamles oplysninger om hver bog og en forfatter. Forespørgslen bruger nøgler til at relatere hver bog i tabellen titler til den tilhørende forfatter i tabellen Forfattere. Den overordende tabel (Forfattere) skal have en primær nøgle, der entydigt identificeres i hver række. Tabellen Titler skal have en kolonne, der indeholder forfatter-id'et til hver titel. Denne kolonne kaldes den fremmede nøgle. Den primære nøgle identificerer hver enkelt forfatter, og den fremmede nøgle identificerer, hvilke bøger der er skrevet af hvilken forfatter.

Hvis en bruger ændrer forfatterens forfatter-id i den overordnede tabel uden at opdatere forfatter-id'et i tabellen Titler, har bøgerne i tabellen Titler ikke længere en gyldig forfatter.

I stedet for at skulle ændre forfatter-id'et i begge tabeller kan du angive regler til referentiel integritet, afhængigt af hvilke handlinger du ønsker at udføre. Du kan vælge, at databasemodellen skal udføre bestemte handlinger, når en nøgle ændres eller slettes i den overordnede tabel.

Bemærk: Udtrykkene overordnet og underordnet bruges til at angive noget helt andet i kategorier, der oprettes vha. figurerne Overordnet til kategori, Kategori og Kategori til underordnet. Du finder yderligere oplysninger om kategorier under Definere kategorier i et databasemodeldiagram.

Toppen af siden

Angive handlinger for referentiel integritet

  1. Dobbeltklik på den relation, du vil angive en referentiel handling for.

  2. Klik på Referentiel handling under Kategorier i vinduet Databaseegenskaber.

  3. Klik på den handling, databasen skal udføre ved den tilsvarende værdi i den underordnede tabel. Du kan vælge mellem følgende handlinger:

    • Ingen handling     Når en værdi i en overordnet tabels primære nøgle ændres eller slettes, bevares den tilsvarende værdi i den underordnede tabels fremmede nøgle uændres.

    • Overlappet     Når en værdi i en overordnet tabels primære nøgle ændres eller slettes, ændres eller slettes den tilsvarende værdi i den underordnede tabels fremmede nøgle, så den svarer til den primære nøgle.

    • Angiv som NULL     Når en værdi i en overordnet tabels primære nøgle ændres eller slettes, angives den tilsvarende værdi i den underordnede tabels fremmede nøgle til NULL.

    • Angiv standard     Når en værdi i en overordnet tabels primære nøgle ændres eller slettes, angives den tilsvarende værdi i den underordnede tabels fremmede nøgle til en standard, som du vælger.

    • Gennemtving ikke     Med denne handling deaktiveres reglerne til referentiel integritet for denne relation.

Bemærk: Hvis indstillingerne Angiv som NULL og Angiv standard er deaktiveret, er relationen sandsynligvis angivet til Valgfri under fanen Diverse i vinduet Databaseegenskaber for relationen.

Toppen af siden

Angive en standardværdi for en kolonne

Hvis du vil bruge handlingen Angiv standard, skal du angive en standardværdi for kolonnen.

  1. Dobbeltklik på tabellen i diagrammen for at åbne vinduet Databaseegenskaber.

  2. Klik på Kolonner under Kategorier, og klik på den kolonne, du vil angive en standard for. Klik derefter på Rediger.

  3. Angiv en værdi under fanen Definition i dialogboksen Kolonneegenskaber.

Toppen af siden

Vise referentiel integritet vha. notation

Du kan angive dokumentindstillingerne til at vise eller skjule notation for referentiel integritet ud for relationslinjerne i modellen.

Hvad betyder bogstaverne i notation for referentiel integritet?

Notation for referentiel integritet viser relationer med to bogstaver adskilt med et kolon med formen [handling i den overordnede tabel]:[resultat i den underordnede tabel]. Eksempel: d:C betyder, at når noget slettes i den overordnede tabel, afspejles ændringen i den underordnede tabel.

Handlinger i den overordnede tabel angives med et lille bogstav:

  • u    Data i den overordnede tabel opdateres.

  • d     Data i den overordnede tabel slettes.

Resultater i den underordnede tabel angives med et stort bogstav:

  • R Ingen handling    Foretag ingen ændringer i den underordnede tabel.

  • C Overlappet     Repliker ændringen i den underordnede tabel.

  • D Angiv standard    Indsæt den tidligere angivne standardværdi for den pågældende kolonne i den underordnede tabel.

  • N Angiv som null     Angiv den underordnede tabel til NULL.

  • (Tom)     Gennemtving ikke referentiel integritet på denne relation.

Bemærk: Disse indstillinger påvirker, hvad der sker i en faktisk database i stedet for i en model. I en model, hvor du foretager reverse engineering fra en eksisterende database, kan du se, hvordan databasen er udformet i forhold til referentiel integritet. I en model, du opretter fra bunden, kan du bruge disse indstillinger til at angive funktionsmåderne for den databasen, du modellerer.

Vise referentiel integritet

  1. Peg på Indstillinger i menuen Database, og klik derefter på Dokument.

  2. Marker afkrydsningsfeltet Referentiel integritet under Vis under fanen Relationer.

Toppen af siden

Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×