Creazione di archivi tramite Data Base Dal modello Concettuale E-R al modello Logico Esempio di relazione N:N Autore M. Lanino
Testo del problema Si implementi lo schema concettuale E-R e si fornisca l’elenco delle tabelle relative ad una Base Dati che tenga conto delle verifiche che gli studenti di una classe svolgono durante l’anno nelle varie materie del loro piano di studi. Regole di derivazione dal modello E-R
Prima versione Studente Si tratta di una relazione fra l’entità STUDENTE e l’entità MATERIA di tipo N:N, infatti : un allievo svolge più prove nelle varie materie e per ciascuna materia vengono valutati più allievi in ciascuna verifica. 1,N Studente 1,N Materia ID_M MATR Verificato in Nome Nome_M Indirizzo Data Data_N Voto Si noti poi che anche la relazione “Verificato in” deve presentare degli attributi, ad esempio: Data di svolgimento e Voto conseguito nella prova. Regole di derivazione dal modello E-R
Occorre effettuare delle modifiche: In questi casi è bene scomporre la relazione N:N con due relazioni 1:N e N:1, facendo comparire una nuova entità (VERIFICA) derivata dalla relazione (Verificato in) che univa le entità primarie (STUDENTE e MATERIA). Si ottiene una seconda versione del modello E-R, più funzionale e adatta a diventare un modello logico ed un archivio. Regole di derivazione dal modello E-R
Seconda versione Studente MATR 1,1 Studente 1,N Verifica Data Sostiene Nome Indirizzo Voto 1,N Data_N Riferita a L’entità aggiuntiva (VERIFICA) diventerà una tabella che si andrà ad aggiungere alle altre due (STUDENTE e MATERIA). 1,1 Materia ID_M Nome_M Regole di derivazione dal modello E-R
Struttura dell’archivio L’archivio risulterà formato dalle seguenti Tabelle: Studente (Matr, Nome,Indirizzo,Data_N) Materia (ID_M, Nome) Verifica (Data, Voto, Matr, ID_M) Si noti che la tabella Verifica contiene, oltre ai suoi attributi, anche le chiavi primarie delle tabelle a cui risulta collegata (Matr e ID_M) Regole di derivazione dal modello E-R Torna al modello E-R
Regole di derivazione Ogni ENTITA’ diventa un ARCHIVIO (Tabella in Access) Ogni istanza di un’entità sarà perciò un Record dell’archivio (Tabella) Ogni ATTRIBUTO di un’entità diventa un CAMPO di ciascuno dei record dell’ archivio (Tabella) e ne eredita le caratteristiche L’identificatore univoco di un’entità diventa Chiave Primaria (Primary Key) del record dell’archivio (Tabella) L’associazione UNO a UNO diventa un archivio unico (Tabella unica) contenente gli attributi di entrambe le entità L’associazione UNO a MOLTI si traduce in due archivi, uno per ciascuna delle entità della relazione L’identificatore univoco dell’entità di partenza nell’associazione UNO a MOLTI diventa Chiave Esterna (Foreign Key) dell’entità di arrivo, cioè l’attributo che è PK del primo archivio diventa un campo dei record del secondo archivio L’associazione MOLTI a MOLTI diventa un nuovo archivio (Tabella) in aggiunta ai due archivi derivati dalle due entità legate dall’associazione. Questo nuovo archivio sarà formato da record che contengono le PK degli altri archivi più gli eventuali attributi dell’associazione Torna al Testo