In ogni database si possono creare delle relazioni tra le tabelle.
Creare relazioni significa creare dei collegamenti; essi servono per ottimizzare lo spazio, per migliorare la velocità di estrazione dei dati e per la normalizzazione del database (quest’ultimo punto verrà trattato in post a se stante).
Vi sono tre tipi di realazione:
- 1 – infinito o chiamata anche uno a molti
- 1 – 1 o chiamata uno a uno
- infinito – infinito o chiamata anche molti a molti
Relazione uno a molti
Ho una tabella in cui sono inseriti i dati anagrafici di una persona, in essa compare anche la città di nascita o la città di residenza.
Per creare un database che sia corretto secondo i criteri accennati precedentemente, si deve creare una seconda tabella al cui interno saranno presenti i nomi delle città.
Per ogni persona inserita nella tabella anagrafica è possibile avere più riferimenti ad una stessa città: si è creata una realazione 1 a molti ossia ad una città possono esserci più persone. A livello logico è un concetto immediato, per un database invece bisogna creare questa logica.
Preferisco spiegare la ralazione mediante un esempio.
Per farla si deve:
- creare una tabella anagrafica con il campo chiave id_anagrafica come chiave priamria
- sempre nella tabella anagrafica creare un campo numerico con nome id (questo campo diventerà poi il riferimento alla tabella città.
- creare una tabella città con canpo chiave di nome Id_città (si nota come quando si creino tabelle che devono essere messe in relazione fra di loro, i campi chiave è meglio non più chamarli con il nome id)
- Adesso si apre la cartella PROGETTAZIONEal suo interno si selezione Relazioni.
- A questo punto si inseriscono le due tabelle.
- Trascinare la chiave primaria della tabella città sul campo numerico di nome id presente nella tabella anagrafica.
- Si aprirà una schermata che permette di creare la realzione, per adesso, in questa fase si tengono tutte le scelte proposte e si dà l’ok.
- Sul disegno comparirà il tipo di relazione appena creata.
Provare a creare tale relazione ed inserire degli opportuni campi; in particolare prima popolare la tabella città.
ERRORI che si possono commettere e quindi impossibilità a creare realzioni:
- sbagliare il tipo di campo che deve diventare la relazione con un’altra tabella
- tenere aperte le tabelle mentre si cerca di creare le relazioni.
- la mancanza del simbolo grafico tra relazioni è causato dalla mancata spunta di utilizzo dell’integrità referenziale.
Relazione uno a uno
La realzione uno a uno, non si crea normalmente, ma viene usata per evidenziare solo una parte di tabella.
Ad esempio se ho una tabella anagrafica e voglio evidenziare solo una sua parte creo una nuova tabella che contiene la parte voluta.
Per realizzarla nella proprietà del campo “Indicizzato” mettere il valore “Sì duplicati non ammessi”.
A questo punto utilizzare la finestra per la gestione delle realazioni per creare tale relazione.
Relazione molti a molti
La relazione molti a molti è utilizzata per creare una relazione ad esempio tra fatture e prodotti, nel senso che all’interno delle fatture vi è la relazione con molti prodotti e molti prodotti possono avere molte fatture.
La creazione di tale relazione avviene mediante una tabella di collegamento tra le altre due tabelle in cui compare solo la chiave primaria di entrambe le tabelle.