CREARE LE RELAZIONI CON ACCESS
Per definire le relazioni con Access si deve utilizzare il comando
STRUMENTI - RELAZIONI, rappresentato nella figura 15.03.
FIG. 15.03
Si apre una finestra di dialogo, figura 15.04, nella quale si devono
scegliere le tabelle sulle quali si vogliono definire le relazioni.
FIG. 15.04
Per visualizzare le tabelle si deve selezionarle, passando sopra il
nome con il puntatore del mouse, tenere premuto il tasto pulsante sinistro.
Una volta che le tabelle necessarie sono evidenziate, quelle blu, si
deve fare un clic sul pulsante AGGIUNGI, si passa alla finestra delle
relazioni, figura 15.05.
FIG. 15.05
Le finestre delle tabelle, come si vede nella figura 15.05, contengono
il nome della tabella e i nomi dei campi. Il campo in grassetto rappresenta
la chiave primaria della tabella. Queste finestre sono come tutte le
altre di Windows, per cui è possibile spostarle con il trascinamento,
sulla barra del titolo, e ingrandirle con il trascinamento, sui bordi
delle finestre.
Per nascondere una tabella nella finestra si deve fare un clic sulla
barra del titolo (sul nome della tabella) e premere il tasto CANC sulla
tastiera.
Se manca una tabella che serve per le relazioni, è possibile
richiamare la finestra della figura 15.04 con il pulsante MOSTRA TABELLA,
nella barra degli strumenti del programma, riportato nella figura 15.06,
FIG. 15.06
Per creare una relazione, si deve trascinare un campo di una tabella
(la chiave primaria) sul corrispondente campo dell'altra tabella (chiave
esterna) e rilasciare il tasto sinistro del mouse. Automaticamente Access
è in grado di capire il tipo di relazione (uno a molti o uno
a uno). È importante prendere i campi giusti, perché la
relazione, per il programma, non è tra le tabelle, ma tra i campi
stessi. Per cui, utilizzando un campo che non è la chiave esterna
(ma con lo stesso tipo di dati e la stessa dimensione), si crea una
relazione diversa, ma funzionante.
ESEMPIO
Si consideri la figura 15.05.
Si deve posizionare il puntatore del mouse sopra il campo "ChiavePrimaria"
della tabella "Tabella 1" e premere il pulsante sinistro del
mouse. Tenendo premuto il tasto sinistro del mouse, si deve spostare
il puntatore sopra il campo "ChiaveEsterna" della tabella
"Tabella 2". Il puntatore del mouse assume la forma di un
piccolo rettangolo giallo, che indica il campo trascinato. A questo
punto si deve rilasciare il pulsante sinistro del mouse e appare la
finestra di dialogo "Modifica relazioni", rappresentata nella
figura 15.07.
FIG. 15.07
In questa finestra Access chiede di applicare l'integrità referenziale,
facendo un clic sul relativo pulsante. Selezionando l'integrità
referenziale si attivano anche i comandi "Aggiorna campi correlati
a catena" e "Elimina campi correlati a catena", come
si vede nella figura 15.08.
FIG. 15.08
La scelta di aggiornare o eliminare i campi correlati deve essere effettuata
in fase di progettazione dell'archivio, in questa fase si deve semplicemente
attivare o disattivare la voce corrispondente.
Per concludere, si deve fare un clic sul pulsante CREA, la relazione
tra le tabelle è visualizzata come nella figura 15.09.
FIG. 15.09
Come si vede, la linea che rappresenta la relazione unisce i due campi
delle tabelle, non semplicemente le tabelle.
Si deve eseguire la stessa procedura per tutte le relazioni che si intende
creare.
Per MODIFICARE UNA RELAZIONE si deve fare un doppio clic posizionando
il puntatore del mouse sopra la linea della relazione. Si apre la finestra
di dialogo "Modifica relazioni", figura 15.08.
Per CANCELLARE UNA RELAZIONE si deve fare un clic sulla linea che rappresenta
la relazione e premere il tasto CANC sulla tastiera.
Se si crea una relazione senza integrità referenziale, questa
viene rappresentata in modo differente, come si vede nella figura 15.10.
FIG. 15.10
Se manca l'integrità referenziale la relazione non è riconosciuta
dal programma, infatti nella figura 15.09 sono segnalati il lato uno
e il lato molti, nella figura 15.10 non c'è distinzione. Come
detto in precedenza, le relazioni senza integrità referenziale
sono molto rare e hanno scopi particolari.