Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Relazioni tra tabelle: Relazione molti molti
martedì 04 novembre 2008 - 12.48
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Grazawily
Profilo
| Newbie
5
messaggi | Data Invio:
mar 4 nov 2008 - 12:48
Salve a tutti
Non sono qui per esporre un problema riscontrato ma bensì per condividere idee riguardante l'argomento database e in particolare le modalità
di relazione tra 2 o più tabelle.
Vorrei dunque trattare a tal proposito la relazione molti-molti tra 2 tabelle e sarei molto grato se c fossero domande o interventi costruttivi.
Cos' è una relazione molti-molti? E' una relazione tra una tabella A e una tabella B nella quale ogni record nella tabella A possono essere
associati più records nella tabella B e viceversa. Un esempio classico può essere quello dei fornitori e degli articoli: ogni fornitore può avere
più articoli, e ogni articolo può appartenere a più fornitori.
E' chiaro quindi che questo tipo di relazione è costruita usando 2 relazioni uno-molti tra le 2 tabelle ma fisicamente è impossibile in quanto una
volta creata la prima relazione uno-molti non si può crearne un altra in quanto violerebbe l'integrità referenziale della prima e allora come si
risolve questo problema?
La soluzione è semplice dal punto di vista concettuale, un po' meno dal punto di vista gestionale: basta creare una terza tabella (nel nostro caso
la chiameremo FornitoriArticoli) nella quale inseriremo 2 campi di riferimento agli indici della tabella fornitori e articoli.
Esempio:
tblFornitori
ID (Primary Key)
Ragionesociale
PartitaIva
---------------
tblArticoli
ID (Primary Key)
Descrizione
Prezzo
---------------
tblFornitoriArticoli
FornitoreID
ArticoloID
Basterà creare le relazioni tra (tblFornitori.ID e tblFornitoriArticoli.FornitoreID) e (tblArticoli.ID e tblFornitoriArticoli.ArticoloID) e avremo una relazione
molti-molti.
Per gestire le tabelle invece la faccenda si fa un po' più complicata, infatti se si usano sottomaschere per la visualizzazione in dettaglio sia dei fornitori
che degli articoli non è possibile agganciare direttamente le tabelle in questione in quanto l'unica relazione che hanno entrambe è quella con la tabella
FornitoriArticoli.
Io ho in mente un paio di soluzioni per una corretta gestione delle tabelle ma posterò tali soluzioni ma sono da verificare, intanto invito chiunque ad
aggiungere commenti su quanto detto o a esporre altre idee e soluzioni in merito all'argomento.
Grazie.
Alla prossima!
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !