Le Relazioni tra le Tabelle di Microsoft Access
Le Relazioni tra le tabelle di Microsoft Access: capire cosa sono esattamente e a che cosa servono
La "Relazione" è un oggetto che permette la sistemazione logica dei dati all'interno di un database
Scopo di una relazione è inoltre evitare che si verifichi l'immissione di dati ripetuti in tabelle differenti e quindi diminuire la probabilità di errori e ridondanze.
Ma le capacità di un database relazionale sono ben più grandi: osservate la figura 1, la quale riporta l'intero "quadro" delle relazioni tra le tabelle che costituiscono il database "olimpiadi"
(Per visualizzare la finestra delle relazioni, in qualunque database di access baste dare click sul menù Strumenti, quindi sulla voce 'Relazioni': se la finestra non contiene nulla significa che non sono mai state finora definite finora relazioni tra le tabelle del database)
Nel "groviglio" di queste relazioni è possibile individuare, nella parte bassa dello schema, il legame per esempio tra la tabella dei Continenti e quella delle Nazioni.
La tabella dei Continenti possiede 2 soli campi, un campo "chiave primaria" 'IdContinente' di tipo Numerico Intero ed un campo descrittivo alfabetico di tipo testo, 'Continente'.
La tabella delle Nazioni, tra i suoi sette campi, prevede anch'essa il campo 'IdContinente', che risulta collegato da "relazione" al corrispondente campo nella tabella dei Continenti (figura 2).
Esaminando più a fondo le caratteristiche di questa relazione per mezzo di Access si potrà notare che questa relazione è di tipo "uno a molti", il che significa che ciascun record della tabella dei Continenti deve avere un codice 'IdContinente' univoco, mentre molti records nella tabella delle Nazioni potranno utilizzare la medesima "chiave esterna".
Questa definizione consente la codifica di 'n' Nazioni quali appartenenti allo stesso Continente.
Facciamo ora doppio click sulla linea che collega la tabella Nazioni a quella dei Continenti: viene visualizzata la finestra di dialogo 'Modifica Relazioni' (figura 3).
Notiamo che la casella di opzione 'Applica integrità referenziale' è abilitata. In base a questo vincolo il database impedirà con tutte le sue forze che si verifichi la presenza di un record dotato di chiave esterna inesistente come chiave primaria nella tabella relazionata.
In altre parole Access non consentirà l'inserimento di una Nazione in un Continente che non esiste e viceversa non consentirà la cancellazione di un Continente cui fanno riferimento una o più Nazioni.
Attraverso la stessa finestra di dialogo 'Modifica relazioni', è possibile anche stabilire altre 2 regole di comportamento: la prima è 'Aggiorna campi correlati a catena'.
Se questa casella viene selezionata verranno aggiornati automaticamente i valori corrispondenti nella tabella correlata ogni volta che si modifica il valore di una chiave primaria nella tabella primaria, viceversa, se la casella è deselezionata (scelta consigliabile per la maggior parte dei casi), allora significa che si vuole proprio impedire che questa situazione si verifichi.
Questa ipotesi non riguarda l'esempio Continenti-Nazioni, poichè la chiave primaria di Continenti è un campo contatore e quindi mai potrà essere modificata, la chiave primaria potrebbe però essere formata da campi di solo testo (pensiamo al codice fiscale) oppure a combinazioni di più campi (esempio: Cognome + Nome) quindi in questi altri casi potrebbe essere utile abilitare la casella 'Aggiorna campi correlati a catena'
La seconda regola è 'Elimina campi correlati a catena': se la si abilita verranno automaticamente eliminati i record correlati nella tabella correlata ogni volta che si elimina un record nella tabella primaria, viceversa se la disabilita (scelta consigliata).
Voci di glossario pertinenti:
Chiave Primaria
Uno o più campi che determinano l'univocità di ogni record in una tabella.
Chiave Esterna
la chiave esterna, come quella primaria, può essere composta di uno o più campi, e normalmente presenta valori ripetuti nella tabella collegante, ma che diventano univoci in quella collegata. Una tabella può avere più chiavi esterne, ma una sola chiave primaria.
Relazione uno a molti
Una relazione tra due tabelle nelle quali ogni record di una tabella presenta più record correlati nell'altra tabella.
Relazione molti a molti
Una relazione tra due tabelle le quali presentano ciascuna una relazione uno-a-molti con una terza tabella comune.
Relazione uno ad uno
Una relazione tra due tabelle in cui ogni record di una tabella presenta un solo record correlato nell'altra tabella.
Join
E' una condizione che confronta due campi appartenenti a tabelle differenti e limita i record ritornati dal prodotto cartesiano. Tale condizione è detta 'condizione di join'.
Importare dati da Excel in Access
Rubrica telefonica con Microsoft Access
Utilizzare Microsoft Query
Costruire una tabella con Access
Gestione Documenti con Microsoft Access
Access controllo gruppo di opzioni
Importa dati da Excel
Importa dati da testo delimitato
Importa dati da file testo larghezza fissa
Casella combinata per selezione valori
Esempi Query con Access
Esempi di Maschere con Microsoft Access
Esempi di Report con Microsoft Access
Le pagine di accesso ai dati di Access
Esempi di Macro con Microsoft Access
Esempi di accesso ai dati con VBA Microsoft Access
Gestire il magazzino con Microsoft Access
Gestire le fatture con Microsoft Access
Aprire un file di Access con ADO e il VB6
Tutorials su Microsoft Access
Dr.Maurizio Cucchiara
autore del corso:
"Corso Base di Microsoft Access"
disponibile on line su questo sito
MC2 E-Learning S.a r.l.
Formazione per il Web
http://www.mc2.it/html/access.html
Cerca sul web con Google:
Ricerca personalizzata
