Integrità Referenziale
L'Integrità Referenziale è un insieme di regole del Modello
Relazione che garantiscono l'integrità dei dati quando si hanno relazioni
associate tra loro attraverso la chiave esterna: queste regole servono per
rendere valide le associazioni tra le tabelle, e per eliminare gli errori in
inserimento, cancellazione, o modifica dei dati collegati tra loro.
Nella finestra di dialogo Relazioni è inoltre possibile
imporre la cosiddetta Integrità referenziale: si tratta di
un sistema di regole che assicura che le relazioni appena impostate si
mantengano valide e che non si eliminino o si modifichino, per errore,
i dati correlati. Per impostare l’integrità referenziale è
necessario rispettare le seguenti condizioni:
-
Il campo corrispondente della tabella primaria è una chiave primaria
o nel caso non lo fosse, almeno disponga di un indice univoco;
-
I campi correlati contengano lo stesso tipo di dati con due possibili varianti,
un campo Contatore può essere correlato ad un campo Numerico
la
cui proprietà Dimensione campo sia impostata a Intero
lungo e un campo Contatore la cui proprietà Dimensione
campo sia impostata a ID replica può essere correlato
a un campo Numerico la cui proprietà Dimensione campo
sia a sua volta impostata su ID replica;
-
Nel caso in cui si trattasse di tabelle esterne al Data Base (fuori dal
progetto) ma comunque accessibili, per impostare l'integrità referenziale
è necessario che le tabelle siano state create con Access e che
il Data Base in cui sono memorizzate sia aperto; non è possibile
applicare l'integrità referenziale a tabelle correlate di Data Base in altri formati.
Se si seleziona la casella di controllo Applica integrità referenziale
quando si crea una relazione, occorrerà in seguito rispettare alcune
regole nell’immissione o nella eliminazione di dati.
-
Non si può immettere un valore nel campo chiave esterna se quest’ultimo
non esiste anche nel campo chiave primaria: ad esempio, quando si aggiunge
un prodotto alla tabella Prodotti è necessario che la chiave
esterna ID fornitore esista (come chiave primaria, naturalmente) nella
tabella Fornitori.
-
Inoltre, non si può cancellare un record da una tabella primaria
(il record relativo ad un fornitore, per tornare all’esempio precedente),
se esistono record corrispondenti in una tabella correlata (cioè
prodotti
venduti da quel fornitore).
-
Infine, non è possibile modificare un valore chiave primaria se
il record corrispondente dispone di record correlati.
Attivare quindi la casella Applica Integrità referenziale della
maschera significa rendere valide queste regole.
Ogni forzatura che si cercherà di fare verrà in questo
caso evidenziata da un messaggio di avvertimento.
Tuttavia Access, permette, sempre comunque mantenendo l'integrità
referenziale, anche ignorando alcune regole, in particolare quelle sulla
restrizione sulla modifica e eliminazione dei record correlati. Queste
operazioni vengono compiute rispettivamente attivando la seconda e terza
opzione: Aggiorna campi correlati a catena e Elimina record
correlati a catena.
Indietro - Sommario
-
Introduzione