Le relazioni in un database
Martedì, 15 gennaio 2008 |Dopo aver impostato le tabelle differenti per ogni oggetto nel database, è necessario un modo per dire a Microsoft Access come raccogliere queste informazioni ancora. Il primo passo in questo processo è quello di definire le relazioni tra le tabelle. Dopo aver fatto questo, è possibile creare query, maschere e report per visualizzare le informazioni da più tabelle in una sola volta.
Come i rapporti?
Un uno-a-molti
L'uno-a-molti è il tipo più comune di relazione. In una relazione uno-a-molti, un record nella tabella A può avere molti record corrispondenti nella tabella B, ma un record nella tabella B ha solo un record corrispondente nella tabella A.
A molti-a-molti
In una relazione molti-a-molti, un record nella tabella A può avere molti record corrispondenti nella tabella B, e un record nella tabella B può avere molti record corrispondenti nella tabella A. Questo tipo di relazione è possibile solo definendo una terza tabella (chiamata tabella di associazione), la cui chiave primaria consiste di due campi chiavi esterne di entrambe le tabelle A e B. In realtà, una relazione molti-a-molti sono un rapporto due-a-molti con una terza tabella. Ad esempio, la tabella Ordini e la tabella Prodotti hanno una relazione molti-a-molti definita creando due relazioni uno-a-molti per la tabella Dettagli ordini.
Uno-a-one
In uno one-to-one, ogni record nella tabella A può avere solo un record corrispondente nella Tabella B, e ogni record nella Tabella B può avere solo un record corrispondente nella tabella A. Questo tipo di relazione non è comune perché molte delle informazioni relative anche essere in una singola tabella. L'uso di un uno-a-uno è consigliato quando si desidera condividere una tabella con molti campi, per isolare parte di una tabella per le informazioni di sicurezza o un negozio che si applica solo a un sottoinsieme della tabella principale. È possibile, ad esempio, creare una tabella per registrare i dipendenti che partecipano a una partita di calcio per raccogliere fondi.
Definizione delle relazioni
È possibile definire una relazione aggiungendo le tabelle da correlare alla finestra Relazioni e quindi trascinando il campo chiave di una tabella e rilasciandolo nella chiave di un'altra tabella.
Il tipo di rapporto che Microsoft Access crea dipende da come i campi correlati sono definiti:
• Una relazione uno-a-molti viene creata se solo uno dei campi correlati è una chiave primaria o ha un indice univoco.
• Un one-to-one viene creato quando entrambi i campi correlati sono chiavi primarie o hanno indici univoci.
• In realtà, una relazione molti-a-molti sono un due-a-molti con una terza tabella la cui chiave primaria consiste di due campi chiavi esterne delle altre due tabelle.
Nota Se si trascina un campo che non è una chiave primaria e non ha un indice univoco ad un altro campo che non è una chiave primaria e non ha un indice univoco, un rapporto indeterminato è stato creato. Nelle query contenenti tabelle con una relazione di indeterminato, verrà visualizzato un valore predefinito linea di join tra le tabelle, ma l'integrità referenziale non viene applicata e non vi è alcuna garanzia che i record sono unici in ogni tabella.





























