Applies ToVisio Premium 2010 Visio 2010 Visio 2007

Bemærk!: Databasemodeldiagrammet findes kun i visse versioner af Visio. Hvis du vil have flere oplysninger, kan du se Kan du ikke finde databasemodelleringsfunktionerne?

Forstå regler for referentiel integritet

Regler for referentiel integritet forhindrer databasebrugere i at bryde tilknytningen mellem relaterede kolonner ved et uheld.

Lad os sige, at du har en database, der hedder bøger med to tabeller, der hedder titler og forfattere. Hvis du har brug for dette eksempel, har hver titel kun én forfatter, men hver forfatter kan have flere titler og oprette det, der kaldes en en-til-mange-relation. Tabellen på en-siden af relationen kaldes den overordnede tabel. Tabellen på "mange"-siden kaldes den underordnede tabel.

Hvis du vil samle oplysninger om hver bog og dens forfatter, skal en forespørgsel bruge nøgler til at matche hver enkelt bog i tabellen titler til dens forfatter i tabellen forfattere. Den overordnede tabel (forfattere) skal have en primær nøgle , der entydigt identificerer hver række. Tabellen titler skal have en kolonne, der indeholder AuthorID for hver titel. Denne kolonne hedder den fremmede nøgle. Den primære nøgle identificerer hver forfatter, og den fremmede nøgle identificerer, hvilke bøger der er skrevet af den forfatter.

Hvis en bruger ændrer forfatterens AuthorID i den overordnede tabel uden at opdatere AuthorID i tabellen titler, har kartotekerne i tabellen titler ikke længere en gyldig forfatter.

I stedet for at skulle ændre AuthorID i begge tabeller, kan du angive regler for referentiel integritet for at udføre den ønskede handling. Du kan vælge at lade databasemodellen udføre bestemte handlinger, når en nøgle ændres eller slettes i den overordnede tabel.

Bemærk!: De termer, der er overordnet og underordnet, bruges til at betyde et helt andet i kategorier, som oprettes med den overordnede til kategori, kategoriog kategori til underordnede figurer. Du kan finde flere oplysninger om kategorier under definere kategorier i et database model diagram.

Angive handlinger for referentiel integritet

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

  2. I vinduet database egenskaber under kategorierskal du klikke på referentiel handling.

  3. Klik på den handling, som databasen skal udføre på 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, forbliver den tilsvarende værdi i den underordnede tabels fremmede nøgle uændret.

    • Lapper     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, du vælger.

    • Håndhæve ikke     Denne handling deaktiverer regler for referentiel integritet for denne relation.

Bemærk!: Hvis indstillingen Angiv null og Angiv standard indstillinger er deaktiveret, er det sandsynligt, at relationen er angivet til valgfrie under fanen Diverse i vinduet database egenskaber for relationen.

Angive en standardværdi for en kolonne

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

  1. Dobbeltklik på tabellen i diagrammet for at åbne vinduet database egenskaber.

  2. Under kategorierskal du klikke på kolonner, klikke på den kolonne, du vil oprette en standard for, og derefter klikke på Rediger.

  3. På fanen definition i dialogboksen Kolonneegenskaber skal du angive en værdi for standardindstillingen.

Vise referentiel integritet ved hjælp af notation

Du kan angive dine Dokumentindstillinger for at skjule eller vise referentiel integritets notation ud for relationslinjerne i modellen.

Hvad betyder bogstaverne i notationen for referentiel integritet?

Referentiel integritets notation viser relationer med to bogstaver adskilt af et kolon i formatet [handling, der udføres i den overordnede tabel]: [resultat i den underordnede tabel]. For eksempel betyder d:C, at når der slettes noget i den overordnede tabel, overføres ændringen overlappende til den underordnede tabel.

Handlinger i den overordnede tabel er angivet med små bogstaver:

  • enheder    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    Undlad at ændre den underordnede tabel.

  • C overlappende     Repliker ændringen i den underordnede tabel.

  • D Angiv standard    Indsæt den standardværdi, du tidligere angav for kolonnen i den underordnede tabel.

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

  • Sort     Undlad at gennemtvinge referentiel integritet for denne relation.

Bemærk!: Disse indstillinger påvirker, hvad der sker i en faktisk database i stedet for i en model. I en model, du foretager reverse engineering fra en eksisterende database, kan du se, hvordan databasen er udformet med hensyn til referentiel integritet. I en model, du opretter fra bunden, kan du bruge disse indstillinger til at dokumentere, hvordan du ønsker, at den database, du vil udforme, fungerer.

Vise referentiel integritet i Visio 2010

  1. På fanen Database i gruppen Administrer skal du klikke på Indstillinger for visning.

  2. Markér afkrydsningsfeltet referentiel handlinger under Visunder fanen relationer .

Kan du ikke finde databasemodelleringsfunktionerne?

Nogle versioner af Visio har ikke skabelonen database model diagram.

Visio Standard indeholder ikke skabelonen Diagram over databasemodel.

Professional- og Premium-versionerne af Visio understøtter reverse engineering-funktionerne for skabelonen Diagram over databasemodel (dvs. brug af en eksisterende database til at oprette en datamodel i Visio), men de understøtter ikke forward engineering (dvs. brug af en Visio-databasemodel til at generere SQL-kode).

Bemærk!: Du kan finde den fulde pakke af databasemodelleringsfunktioner, herunder både reverse engineering og forward engineering, i Visio til Enterprise Architects. Visio til Enterprise Architects er kun inkluderet i MSDN Premium-abonnementer, som er tilgængelige med rollebaserede udgaver af Visual Studio Professional og Visual Studio Team System.

Hvis du bruger Visio-abonnement 2 , og du vil have mere at vide om, hvordan du kan teknikere en eksisterende database til en databasemodel, skal du se emnet foretage reverse engineering af en eksisterende database.

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.

Communities hjælper dig med at stille og besvare spørgsmål, give feedback og høre fra eksperter med omfattende viden.