31.05.2013 Views

Corso Database e Access - Paolo PAVAN

Corso Database e Access - Paolo PAVAN

Corso Database e Access - Paolo PAVAN

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chiave<br />

Primaria<br />

CATEGORIE<br />

IDCategoria<br />

Nome<br />

Descrizione<br />

Esempio di Relazione<br />

Relazione 1 a N (Molti)<br />

Chiave<br />

Esterna<br />

1<br />

PRODOTTI<br />

IDProdotto<br />

NomeProdotto<br />

IDCategoria<br />

Quantità<br />

Prezzo<br />

Scorte<br />

Immagine<br />

Sospeso<br />

Per impostare una<br />

relazione 1 a N bisogna<br />

aggiungere il campo di<br />

chiave primaria del lato<br />

uno alla tabella del lato<br />

molti, il quale diventa la<br />

sua chiave esterna.<br />

La tabella Categorie intrattiene una relazione del tipo uno a molti con la tabella Prodotti:<br />

“Questo perché un prodotto può appartenere ad un unica categoria mentre una categoria può<br />

contenere più prodotti diversi”.<br />

In parole povere una determinata categoria appare una sola volta nella tabella Categorie mentre può<br />

apparire N volte nella tabella Prodotti.<br />

Le chiavi primarie sono rappresentate dai rispettivi codici (IDCategorie e IDProdotti) mentre la chiave<br />

esterna in italico, nella tabella Prodotti rappresenta il campo che consente di collegare le due tabelle.<br />

La rappresentazione di questa semplice struttura dati su di una singola tabella, sarebbe stata<br />

impossibile, in quanto ci avrebbe costretti a duplicare dati (cosa che viola le regole normali), in<br />

quanto per ogni prodotto della stessa categoria il codice della categoria sarebbe stato ripetuto, cosa<br />

impossibile visto che si tratta della chiave primaria della tabella, ovvero il campo che deve essere<br />

sempre differente, in quanto garantisce l'unicità di ogni singolo record.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!