Păstrați integritatea referențială în diagrame Model bază de date

Se aplică la
Visio Premium 2010 Visio 2010 Visio 2007

Notă

Diagrama model bază de date este disponibilă numai în anumite versiuni de Visio. Pentru mai multe informații, consultați Nu puteți găsi caracteristicile de modelare a bazelor de date?.

Înțelegerea regulilor de integritate referențială

Regulile de integritate referențială împiedică utilizatorii bazei de date să rupă accidental maparea între coloanele asociate.

Să presupunem că aveți o bază de date numită Cărți cu două tabele denumite Titluri și Autori. În scopul acestui exemplu, fiecare titlu are un singur autor, dar fiecare autor poate avea mai multe titluri, creând ceea ce se numește relație unu-la-mai-mulți. Tabelul din partea "unu" a relației se numește tabel părinte. Tabelul din partea "mulți" se numește tabel fiu.

Pentru a colecta informații despre fiecare carte și autor, o interogare utilizează chei pentru a potrivi fiecare carte din tabelul Titluri cu autorul său din tabelul Autori. Tabelul părinte (Autori) trebuie să aibă o cheie primară care identifică în mod unic fiecare rând. Tabelul Titluri trebuie să aibă o coloană care conține ID-ul autor pentru fiecare titlu. Această coloană se numește cheie străină. Cheia primară identifică fiecare autor, iar cheia străină identifică cărțile care au fost scrise de autor.

Dacă un utilizator modifică ID-ul autorului în tabelul părinte, fără a actualiza ID-ul autorului din tabelul Titluri, cărțile din tabelul Titluri nu mai au un autor valid.

În loc să modificați ID-ul autor în ambele tabele, puteți seta reguli de integritate referențială pentru a efectua acțiunea dorită. Puteți alege ca modelul bazei de date să efectueze acțiuni specifice atunci când o cheie este modificată sau ștearsă din tabelul părinte.

Notă

Termenii părinte și fiu sunt utilizați pentru a însemna ceva destul de diferit în categorii, care sunt create cu formele Părinte la categorie, Categorie și Categorie la forme fiu . Pentru mai multe informații despre categorii, consultați Definirea categoriilor într-o diagramă Model bază de date.

Setarea acțiunilor pentru integritatea referențială

  1. Faceți dublu clic pe relația pentru care doriți să setați o acțiune referențială.

  2. În fereastra Proprietăți bază de date, sub Categorii, faceți clic pe Acțiune referențială.

  3. Faceți clic pe acțiunea pe care doriți să o efectueze baza de date asupra valorii corespunzătoare din tabelul fiu. Puteți alege dintre următoarele acțiuni:

    • Nicio acțiune Atunci când o valoare din cheia primară a unui tabel părinte este modificată sau ștearsă, valoarea corespunzătoare din cheia străină a tabelului secundar este lăsată neschimbată.
    • În cascadă Atunci când o valoare din cheia primară a unui tabel părinte este modificată sau ștearsă, valoarea corespondentă din cheia străină a tabelului secundar se modifică sau se șterge pentru a corespunde cheii primare.
    • Setare NULL Atunci când o valoare din cheia primară a unui tabel părinte este modificată sau ștearsă, valoarea corespunzătoare din cheia străină a tabelului secundar este setată la NULL.
    • Stabilire ca implicit Atunci când o valoare din cheia primară a unui tabel părinte este modificată sau ștearsă, valoarea corespunzătoare din cheia străină a tabelului secundar este setată la valoarea implicită pe care o alegeți.
    • Nu se impune Această acțiune dezactivează regulile de integritate referențială pentru această relație.

Notă

Dacă opțiunile Setare NULL și Setare implicită sunt dezactivate, probabil că relația este setată la Opțional pe fila Diverse din fereastra Proprietăți bază de date pentru relație.

Setarea unei valori implicite pentru o coloană

Pentru a utiliza acțiunea Setare implicită , trebuie să furnizați o valoare implicită pentru coloană.

  1. Faceți dublu clic pe tabelul din diagramă pentru a deschide fereastra Proprietăți bază de date.
  2. Sub Categorii, faceți clic pe Coloane, faceți clic pe coloana pentru care doriți să creați valoarea implicită, apoi faceți clic pe Editare.
  3. Pe fila Definiție din caseta de dialog Proprietăți coloană , introduceți o valoare pentru valoarea implicită.

Afișare integritate referențială utilizând notația

Puteți seta Opțiuni document să ascundă sau să afișeze notația de integritate referențială lângă liniile de relație din model.

Ce înseamnă literele din notația de integritate referențială?

Notația de integritate referențială afișează relațiile cu două litere separate prin două puncte, în forma [acțiune efectuată în tabelul părinte]:[rezultat în tabelul fiu]. De exemplu, d:C înseamnă că, atunci când se șterge ceva din tabelul părinte, modificarea este în cascadă la tabelul fiu.

Acțiunile din tabelul părinte sunt indicate printr-o literă mică:

  • u Datele din tabelul părinte sunt actualizate.
  • d Datele din tabelul părinte sunt șterse.

Rezultatele din tabelul fiu sunt indicate printr-o literă mare:

  • R Nicio acțiune Nu modificați tabelul fiu.
  • C în cascadă Reproduceți modificarea din tabelul fiu.
  • D Stabilire ca implicit Inserați valoarea implicită pe care ați setat-o anterior pentru acea coloană în tabelul fiu.
  • N Setare nul Setați tabelul fiu la NULL.
  • (Necompletat) Nu se impune integritatea referențială pentru această relație.

Notă

Aceste setări afectează ce se întâmplă într-o bază de date reală, nu într-un model. Într-un model pe care îl refaceți ca sursă dintr-o bază de date existentă, puteți vedea cum este proiectată baza de date în ceea ce privește integritatea referențială. Într-un model pe care îl creați de la zero, puteți utiliza aceste setări pentru a documenta modul în care doriți să se comporte baza de date pe care o modelați.

Afișarea integrității referențiale în Visio 2010

  1. Pe fila Bază de date, în grupul Gestionare, faceți clic pe Opțiuni afișare.
  2. Pe fila Relații , sub Afișare, bifați caseta de selectare Acțiuni referențiale .

Nu puteți găsi caracteristicile de modelare a bazelor de date?

Unele versiuni de Visio nu au șablonul Diagramă model bază de date.

Visio Standard nu include șablonul Diagramă model bază de date.

Edițiile Visio Professional și Premium acceptă caracteristicile de refacere a programului sursă pentru șablonul Diagramă model bază de date (mai exact, utilizarea unei baze de date existente pentru a crea un model în Visio), dar acestea nu acceptă crearea programului sursă (mai exact, utilizarea unui model de bază de date Visio pentru a genera cod SQL).

Notă

Puteți găsi suita completă de caracteristici de modelare a bazelor de date, inclusiv refacerea programului sursă și crearea programului sursă, în Visio for Enterprise Architects. Visio for Enterprise Architects este inclus în abonamentul MSDN Premium, care este disponibil cu edițiile bazate pe roluri Visual Studio Professional și Visio Studio Team System.

Dacă utilizați Visio Plan 2 și doriți să aflați cum să transformați o bază de date existentă într-un model de bază de date, consultați subiectul Refacerea proiectării unei baze de date existente.