PROVE SCRITTE CON SOLUZIONE

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "PROVE SCRITTE CON SOLUZIONE"

Transcript

1 ANNO ACCADEMICO 2011/2012 SISTEMI INFORMATIVI E BASI DI DATI CORSO DI LAUREA IN INGEGNERIA GESTIONALE PROVE SCRITTE CON SOLUZIONE Prof. Domenico Beneventano

2 2 INDICE 1 Struttura della Prova Scritta Esempio di Prova Scritta (6/6/2011) Esempio di Prova Scritta (11/7/2011) Esercizio Prova Scritta SI Soluzione Considerazione su vincolo non esprimibile in E/R Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Considerazione su vincolo non esprimibile in E/R Prova Scritta SI Soluzione Prova Scritta SI Soluzione Considerazione su vincolo non esprimibile in E/R Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione

3 3 3 Esercizio Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio Esercizio Commentato Soluzione Riepilogo tipologie di interrogazioni PP Soluzione PP Soluzione PP Soluzione PP Soluzione PP Soluzione Esercizio 4 127

4 4

5 Capitolo 1 Struttura della Prova Scritta Il compito scritto è costituito da quattro esercizi: Esercizio 1 (13 punti) Esercizio di progettazione concettuale. Gli esercizi relativi a questo punto sono riportati nel Capitolo 2. L esercizio di progettazione concettuale è costituito da una serie di specifiche sulla base delle quali occorre disegnare lo schema E/R. Come è riportato nella soluzione degli esercizi proposti, la soluzione può essere disegnata riportando le varie porzioni di schemi relative alle specifiche: non è richiesto, non è necessario riportare tutto in un unico schema E/R. In alcuni testi, come ad esempio il testo 2.2, ci sono delle specifiche in alternativa (Spec. 2, Spec. 2 bis e Spec. 2 ter): nel testo del compito scritto, una sola di queste specifiche alternative sarà presente. Si consiglia di svolgere gli esercizi cominciando dai primi, in quanto la loro discussione è più dettagliata. Altri esempi significativi di esercizi di progettazione concettuale, con relativa soluzione, sono riportati sul libro di testo. Esercizio 2 (7 punti) Esercizio di progettazione logico-relazionale. Gli esercizi relativi a questo punto sono riportati nel Capitolo 3. Consiste nel tradurre in schema relazionale uno schema E/R dato. La traduzione deve essere fatta in modo tale che lo schema relazionale ottenuto risulti in terza forma normale: ricordiamo che questo si ottiene applicando le regole di traduzione del Capitolo 3. Progettazione Logica del libro di testo. Si possono applicare indifferentemente le regole di traduzione standard oppure le altre regole di traduzione che inglobano le associazioni nelle relazioni. Il punto facoltativo di questo esercizio è costituito da una richiesta di traduzione specifica, quale ad esempio quella di inglobare alcune associazioni in una certa relazione. Altri esempi significativi di esercizi di progettazione logico-relazionale, con relativa soluzione, sono riportati sul libro di testo. Esercizio 3 (7 punti) Esercizio di interrogazioni SQL: consiste di tre interrogazioni (più una eventuale facoltativa) da scrivere in SQL. Negli esercizi relativi a questo punto, riportati nel Capitolo 4, viene generalmente riportato un insieme di più di tre interrogazioni, Si noti che in ogni testo dell esercizio 3 è disponibile un link allo script di creazione del database per poter provare su SQL SERVER le interrogazioni. Altri esempi significativi di esercizi di interrogazioni SQL, con relativa soluzione, sono riportati sul libro di testo. Esercizio 4 (3 punti) Domanda di teoria. Alcune tipiche domande sono riportate nel Capitolo 5. Uno solo tra i primi tre esercizi contiene anche un punto facoltativo (3 punti). Il massimo punteggio è quindi 33.

6 6 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Nelle sezioni 1.1 e 1.2 sono riportati i testi degli scritti di due appelli dello scorso Anno Accademico; per ogni scritto vengono riportate due (tra le varie) versioni. Questi scritti verranno svolti durante le esercitazioni dell Anno Accademico corrente.

7 1.1. ESEMPIO DI PROVA SCRITTA (6/6/2011) Esempio di Prova Scritta (6/6/2011) PROVA SCRITTA - 6/6/2011 (versione 1) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una facoltà per la gestione delle lezioni e degli esami secondo le seguenti specifiche. Spec. 1 Un insegnamento della facoltà ha un codice univoco ed una descrizione. Gli studenti della facoltà hanno una matricola univoca ed un anno di corso. Il personale della facoltà, caratterizzato dagli usuali dati anagrafici si suddivide in docenti e tecnici. I locali della facoltà, identificati da un nome e caratterizzati da un numero posti, sono suddivisi in aule e laboratori. Un laboratorio ha una tipologia ed un tecnico responsabile; un tecnico può essere responsabile di più laboratori (al massimo 7) ma non della stessa tipologia. Spec. 2 Una prova scritta (chiamata semplicemente scritto) è relativa ad un insegnamento (un insegnamento può avere più scritti), si svolge in un aula (in un aula si possono svolgere più scritti) ed è tenuta da un docente (un docente può tenere più scritti). I vincoli da esprimere sono i seguenti: in una certa data, per un insegnamento c è un solo scritto; inoltre, in una certa data, un docente può tenere un solo scritto; per le aule invece non c è nessuna limitazione. infine solo per alcune prove scritte si deve indicare anche un ulteriore docente di supporto ; in una certa data, un docente può essere di supporto in una sola prova scritta. Nota: non sono richiesti altri controlli. Spec. 3 Per ogni insegnamento i docenti tengono delle lezioni secondo le seguenti specifiche. Un docente in un certo mese può tenere da 4 a 12 lezioni; ognuna di queste lezioni è identificata dal giorno del mese in cui si tiene, cioè per un certo docente in un certo giorno del mese cè una sola lezione; una lezione è relativa ad un solo specifico insegnamento; per gli insegnamenti ci possono essere più lezioni, senza nessuna limitazione. Spec. 4 Per ogni scritto, occorre riportare la partecipazione degli studenti: ad un scritto partecipano da uno a 100 studenti, uno studente può partecipare a più scritti; ad una certo scritto uno studente può partecipare ovviamente una sola volta e gli viene assegnato un numero univoco per quello scritto (cioè in uno scritto, ad un numero corrisponde un unico studente). Inoltre, occorre indicare l eventuale calcolatrice utilizzata dallo studente: durante uno scritto uno studente può utilizzare solo una calcolatrice e, viceversa, durante uno scritto una calcolatrice può essere utilizzata da un solo studente. Una calcolatrice ha un numero univoco ed una descrizione e può essere usata in più scritti. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle lezioni: per un certo insegnamento in un certo mese, un certo docente può tenere al massimo una lezione. Esercizio 4 Definizione di BCNF (Boyce-Codd Normal Form) nel modello relazionale ed esempio di schema relazionale in terza forma normale ma non in BCNF.

8 8 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Facoltativo Solo per le associazioni R4 e R6: riportare la traduzione non standard di R4 e R6 includendole in E3; riportare quindi la traduzione dell attributo multiplo AMR6 (3 punti). Esercizio 3 Dato il seguente schema relazionale: PERSONA(CF,NAZIONE,CITTA) GITA(COD,GENERE, DESTINAZIONE) PARTECIPA(CF,COD,GENERE,MESE,PREZZO PAGATO) F.K. CF REFERENCES PERSONA F.K. COD,GENERE REFERENCES GITA Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare le gite (tutti gli attributi) con destinazione Parigi alle quali ha partecipato almeno una persona di Reggio nel mese di Marzo ; Query 2 Elencare le gite (tutti gli attributi) con destinazione Londra alle quali ha partecipato almeno una persona di Reggio (in un mese qualsiasi, cioe il mese non interessa) e alle quali non ha partecipato nessuna persona di Modena nel mese di Marzo ; Query 3 Elencare le persone (tutti gli attributi) di Reggio che hanno partecipato ad almeno 5 gite con destinazione Londra nel mese di Marzo ;

9 1.1. ESEMPIO DI PROVA SCRITTA (6/6/2011) 9 PROVA SCRITTA - 6/6/2011 (versione 2) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una facoltà per la gestione delle lezioni e degli esami secondo le seguenti specifiche. Spec. 1 Un insegnamento della facoltà ha un codice univoco ed una descrizione. Gli studenti della facoltà hanno una matricola univoca ed un anno di corso. Il personale della facoltà, caratterizzato dagli usuali dati anagrafici si suddivide in docenti e tecnici. I locali della facoltà, identificati da un nome e caratterizzati da un numero posti, sono suddivisi in aule e laboratori. Un laboratorio ha una tipologia ed un docente responsabile; un docente può essere responsabile di più laboratori (al massimo 7) ma non della stessa tipologia. Spec. 2 Una prova pratica (chiamata semplicemente pratica) è relativa ad un insegnamento (un insegnamento può avere più pratiche), si svolge in un laboratorio (in un laboratorio si possono svolgere più pratiche) e ha un tecnico che assiste (un tecnico può assistere più pratiche). I vincoli da esprimere sono i seguenti: in una certa data, per un insegnamento c è una sola pratica; inoltre, in una certa data, in un laboratorio c è una sola pratica; per i tecnici invece non c è nessuna limitazione relativa alla data; infine solo per alcune prove pratiche si deve indicare anche un ulteriore laboratorio di riserva ; in una certa data, un laboratorio può essere di riserva in una sola prova pratica. Nota: non sono richiesti altri controlli. Spec. 3 Per ogni insegnamento i docenti tengono delle lezioni secondo le seguenti specifiche. Per un insegnamento in un certo mese ci possono essere da 6 a 12 lezioni; ognuna di queste lezioni è identificata dal giorno del mese in cui si tiene, cioè per un certo insegnamento in un certo giorno del mese c è una sola lezione ; una lezione è tenuta da un solo docente, un docente può tenere più lezioni, senza alcuna limitazione. Spec. 4 Per ogni pratica, occorre riportare la partecipazione degli studenti: ad una pratica partecipano da uno a 40 studenti, uno studente può partecipare a più pratiche; ad una certa pratica uno studente può partecipare ovviamente una sola volta e gli viene assegnato un numero univoco per quella pratica (cioè in una pratica, ad un numero corrisponde un unico studente). Inoltre, occorre indicare l eventuale PC utilizzato dallo studente: durante una prova pratica uno studente può utilizzare solo un PC e, viceversa, durante una prova pratica un PC può essere utilizzato da un solo studente. Un PC ha un codice univoco ed una descrizione e può essere usato in più pratiche. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle lezioni: per un certo insegnamento in un certo mese, un certo docente può tenere al massimo una lezione. Esercizio 4 Definizione di vincolo di integrità referenziale nel modello relazionale.

10 10 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Facoltativo Solo per le associazioni R4 e R6: riportare la traduzione non standard di R4 e R6 includendole in E5; riportare quindi la traduzione dell attributo multiplo AMR6 (3 punti). Esercizio 3 Dato il seguente schema relazionale: PERSONA(CF,STATO,CITTA) GITA(COD,TIPO, DESTINAZIONE) PARTECIPA(CF,STATO,COD,MESE,PREZZO PAGATO) F.K. CF,STATO REFERENCES PERSONA F.K. COD REFERENCES GITA Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare le persone (tutti gli attributi) di Reggio che hanno partecipato ad almeno un gita con destinazione Parigi nel mese di Marzo ; Query 2 Elencare le gite (tutti gli attributi) con destinazione Londra alle quali ha partecipato almeno una persona di Reggio (in un mese qualsiasi, cioe il mese non interessa) e alle quali non ha partecipato nessuna persona di Modena nel mese di Marzo ; Query 3 Elencare le persone (tutti gli attributi) di Reggio che hanno partecipato ad almeno 5 gite con destinazione Londra nel mese di Marzo ;

11 1.2. ESEMPIO DI PROVA SCRITTA (11/7/2011) Esempio di Prova Scritta (11/7/2011) PROVA SCRITTA - 11/7/2011 (versione 1) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una PayTV per la gestione delle serie tv (con le relative puntate ed attori) e delle trasmissioni, secondo le seguenti specifiche. Spec. 1 Una SerieTV ha un codice univoco ed una descrizione. Il personale ha usuali dati anagrafici, si suddivide in dirigenti, tecnici, attori e controfigure. Un CanaleTV ha un codice univoco, un nome ed una descrizione. Uno Studio televisivo (detto StudioTV) ha un nome univoco, una tipologia ed un dirigente responsabile; un dirigente può essere responsabile di più StudiTV (al massimo 7) ma non della stessa tipologia. Spec. 2 Una Puntata è di una SerieTV (una SerieTV può avere più puntate), ha una data, viene girata in uno StudioTV (in uno StudioTV si possono girare più puntate) e ha un tecnico che assiste (un tecnico può assistere più puntate). I vincoli da esprimere sono i seguenti: in una certa data, per una SerieTV c è una sola puntata; inoltre, in una certa data, in uno StudioTV viene girata una sola puntata; per i tecnici invece non c è nessuna limitazione relativa alla data; infine solo per alcune puntate si deve indicare anche un ulteriore StudioTV di riserva; in una certa data, uno StudioTV può essere di riserva in una sola puntata. Nota: non sono richiesti altri controlli. Spec. 3 La programmazione delle Puntate sui CanaliTV avviene secondo le seguenti specifiche. In un CanaleTv in un certa data ci possono essere da 3 a 6 programmi orari ognuno di questi programmi orari è identificata dal canaletv, dalla data e dall ora in cui si tiene, cioè per un certo CanaleTV in una certa data, ad una certa ora c è un solo programma orario; in un programma orario viene trasmessa una ed una sola puntata; per le puntate ci possono essere più trasmissioni, senza nessuna limitazione. Esempio: CanaleTV Data Ora Puntata Canale3 2 Maggio P1 Canale3 2 Maggio P1 Canale3 2 Maggio P2 Canale4 18 Maggio P1 Canale4 18 Maggio P1 Canale4 18 Maggio P2 Canale4 18 Maggio P3 Spec. 4 Gli attori recitano nelle SerieTV secondo le seguenti specifiche: un attore può recitare in più SerieTV, ad una SerieTV recitano da 10 a 20 attori; per una certa serietv un attore recita una sola volta in uno ed un solo ruolo; inoltre per una certa SerieTV, ad un ruolo corrisponde un solo attore. Infine, occorre indicare l eventuale controfigura associata all attore: durante una SerieTV, un attore può avere una sola controfigura e, viceversa, durante una SerieTv una controfigura può essere associata ad un solo attore. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle trasmissioni: per un certo CanaleTV, in un giorno di un mese può essere trasmessa una sola puntata (quindi, nell esempio, la terza riga non è più consentita). Esercizio 4 Classificazione degli identificatori nel modello E/R.

12 12 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Esercizio 3 Dato il seguente schema relazionale: PRODOTTO(NOME,TIPO, CATEGORIA) PERSONA(CF,STATO,CITTA) ACQUISTO(NOME,TIPO,CF,MESE,PREZZO) F.K. CF REFERENCES PERSONA F.K. NOME,TIPO REFERENCES PRODOTTO Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare le persone (tutti gli attributi) di Reggio che hanno acquistato almeno un prodotto con categoria Scarpe nel mese di Marzo oppure nel mese di Aprile; Query 2 Elencare le persone (tutti gli attributi) di Reggio che hanno acquistato almeno un prodotto con categorie Giacche ad un prezzo Maggiore di 30 e che non hanno mai acquistato un prodotto con categoria Scarpe nel mese di Marzo ; Query 3 Elencare i prodotti (tutti gli attributi) con categoria Scarpe che sono stati acquistati almeno 5 volte da persone di Modena nel mese di Marzo ; (Facoltativo) Elencare per ogni STATO, il CF della persona che ha effettuato il Maggior numero di acquisti, ovvero il CF della persona con il Maggior numero di occorrenze in ACQUISTO per quello STATO.

13 1.2. ESEMPIO DI PROVA SCRITTA (11/7/2011) 13 PROVA SCRITTA - 11/7/2011 (versione 2) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una PayTV per la gestione delle serie tv (con le relative puntate ed attori) e delle trasmissioni, secondo le seguenti specifiche. Spec. 1 Una SerieTV ha un codice univoco ed una descrizione. Il personale ha usuali dati anagrafici, si suddivide in dirigenti, tecnici, attori e controfigure. Un CanaleTV ha un codice univoco, un nome ed una descrizione. Uno Studio televisivo (detto StudioTV) ha un nome univoco, una sede ed un dirigente responsabile; un dirigente può essere responsabile di più StudiTV (al massimo 5) ma non della stessa sede. Spec. 2 Una Puntata è di una SerieTV (una SerieTV può avere più puntate), ha una data, viene girata in uno StudioTV (in uno StudioTV si possono girare più puntate) e ha un tecnico che assiste (un tecnico può assistere più puntate). I vincoli da esprimere sono i seguenti: in una certa data, per una SerieTV c è una sola puntata; inoltre, in una certa data, un tecnico può assistere solo ad una puntata; per gli StudiTV invece non c è nessuna limitazione relativa alla data; infine, solo per alcune puntate, si deve indicare anche un ulteriore tecnico di supporto; in una certa data, un tecnico può essere di supporto in una sola puntata. Nota: non sono richiesti altri controlli. Spec. 3 La programmazione delle Puntate sui CanaliTV avviene secondo le seguenti specifiche. Per un certa puntata in un certo mese ci possono essere da 2 a 4 trasmissioni (per trasmissione si intende la messa in onda di una puntata; ad esempio una trasmissione è la messa in onda della puntata P1 nel giorno 2 di Maggio2010); ognuna di queste trasmissioni è identificata dalla puntata, dal mese e dal giorno del mese in cui si tiene, cioè per una certa puntata, per un certo mese e per un certo giorno del mese, c è una sola trasmissione; una trasmissione avviene su uno ed un solo canaletv; per i CanaliTv ci possono essere più trasmissioni, senza nessuna limitazione. Esempio: Puntata Mese Giorno CanaleTV P1 Maggio Canale3 P1 Maggio Canale4 P2 Maggio Canale3 P2 Maggio Canale3 P2 Maggio Canale3 Spec. 4 Gli attori recitano nelle SerieTV secondo le seguenti specifiche: un attore può recitare in più SerieTV, ad una SerieTV recitano da 10 a 20 attori; per una certa serietv un attore recita una sola volta in uno ed un solo ruolo; inoltre per una certa SerieTV, ad un ruolo corrisponde un solo attore. Infine, occorre indicare l eventuale controfigura associata all attore: durante una SerieTV, un attore può avere una sola controfigura e, viceversa, durante una SerieTv una controfigura può essere associata ad un solo attore. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle programmazioni: una Puntata, in una data può essere trasmessa una sola volta (quindi, nell esempio, la seconda e quinta riga non sono più consentite). Esercizio 4 Definizione di identificatore nel modello E/R.

14 14 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Esercizio 3 Dato il seguente schema relazionale: PRODOTTO(NOME,TIPO, CATEGORIA) PERSONA(CF,STATO,CITTA) ACQUISTO(NOME,TIPO,CF,MESE,PREZZO) F.K. CF REFERENCES PERSONA F.K. NOME,TIPO REFERENCES PRODOTTO Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare i prodotti (tutti gli attributi) con categoria Maglie che sono stati acquistati da almeno una persona di Reggio nel mese di Marzo con prezzo Maggiore di 10 oppure nel mese di Aprile con prezzo minore di 10; Query 2 Elencare i prodotti (tutti gli attributi) con categoria Giacche acquistati da almeno una persona di Reggio nel mese di Marzo e che non sono mai stati acquistati da una persona di Modena nel mese di Marzo ; Query 3 Elencare le persone (tutti gli attributi) di Reggio che hanno acquistato almeno 5 prodotti con con categoria Giacche nel mese di Marzo ; (Facoltativo) Elencare per ogni TIPO, il NOME del prodotto acquistato il Maggior numero di volte, ovvero il NOME del prodotto con il Maggior numero di occorrenze in ACQUISTO per quel TIPO.

15 Capitolo 2 Esercizio 1 Questo capitolo contiene gli esercizi relativi alla progettazione concettuale. L esercizio di progettazione concettuale è costituito da una serie di specifiche sulla base delle quali occorre disegnare lo schema E/R. Come è riportato nella soluzione degli esercizi proposti, la soluzione può essere disegnata riportando le varie porzioni di schemi relative alle specifiche: non è richiesto, non è necessario riportare tutto in un unico schema E/R. In alcuni testi riportati, come ad esempio il testo 2.2, ci sono delle specifiche in alternativa (Spec. 2, Spec. 2 bis e Spec. 2 ter): nel testo del compito scritto, una sola di queste specifiche alternative sarà presente.

16 16 CAPITOLO 2. ESERCIZIO Prova Scritta SI PROVA SCRITTA - 9/1/2006 Si devono rappresentare informazioni relative ad una società ristoratrice che gestisce una catena di ristoranti, secondo le seguenti specifiche. Spec. 1 Ogni ristorante ha un nome univoco, una città, un giorno settimanale di chiusura ed un indirizzo. Non ci possono essere due ristoranti nella stessa città con lo stesso giorno settimanale di chiusura. Spec. 2 Per ogni ristorante ci sono esattamente 6 menu fissi, ciascuno con un costo e composto da un minimo di 5 ad un massimo di 8 piatti. Ogni piatto (inteso come portata) ha un nome univoco ed una descrizione. Un certo piatto può essere in più menu fissi, sia dello stesso ristorante che di differenti ristoranti. Spec. 3 Per ogni ristorante viene riportato anche un menu libero, indicando i piatti disponibili suddivisisi per tipologia (ad esempio, Antipasti, Primi, Dessert, e cosi via): ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. Spec. 4 I prodotti vengono forniti settimanalmente ai ristoranti da fornitori, con la seguente specifica: in una certa settimana, un prodotto è fornito ad un ristorante da uno ed un solo fornitore, in una certa quantità e ad un certo prezzo. Un fornitore può effettuare più forniture. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo ai menu fissi: allo scopo di diversificare l offerta, un certo piatto non può comparire più di una volta nella composizione dei menu fissi di uno stesso ristorante.in altre parole, data la coppia RISTORANTE-PIATTO ho un unico MENUFISSO. In maniera analoga al puntoprecedente, devo fare in modo da formare una coppia univoca RISTORANTE- PIATTO al quale associare unmenufisso : Facoltativo Aggiungere allo schema E/R il seguente vincolo relativo alle forniture di prodotti: un certo fornitore può fornire un certo prodotto ad un certo ristorante una ed una sola volta.

17 2.1. PROVA SCRITTA SI Soluzione Riportiamo e discutiamo i punti fondamentali; in alcune entità gli attributi semplici sono omessi. Spec. 1 Ogni ristorante ha un nome univoco, una città, un giorno settimanale di chiusura ed un indirizzo. Non ci possono essere due ristoranti nella stessa città con lo stesso giorno settimanale di chiusura. NOME INDIRIZZO CITTA GIORNO_CHIUSURA RISTORANTE Spec. 2 Per ogni ristorante ci sono esattamente 6 menu fissi, ciascuno con un costo e composto da un minimo di 5 ad un massimo di 8 piatti. Ogni piatto (inteso come portata) ha un nome univoco ed una descrizione. Un certo piatto può essere in più menu fissi, sia dello stesso ristorante che di differenti ristoranti. Sono possibili le seguenti tre soluzioni per i menu fissi: MENU FISSO DI (6,6) RISTORANTE COD_MF MENU FISSO DI (6,6) RISTORANTE COD_MF MENU FISSO (1,N) DI (6,6) RISTORANTE COD_MF Nelle prime due soluzioni il menu fisso è di un solo ristorante, mentre nella terza lo stesso menu fisso è condiviso da più ristoranti. Indipendentemente dalla soluzione scelta, la composizione di un menu fisso è: COMPOSIZIONE MENU FISSO (5,8) (1,N) PIATTO Spec. 3 Per ogni ristorante viene riportato anche un menu libero, indicando i piatti disponibili suddivisisi per tipologia (ad esempio, Antipasti, Primi, Dessert, e cosi via): ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. In una prima soluzione si usa l entità Menu Libero, in modo analogo al Menu fisso discusso prima:

18 18 CAPITOLO 2. ESERCIZIO 1 PIATTO (1,N) COMPOSIZIONE-LIBERO (5,N) TIPOLOGIE HA (2,N) MENU LIBERO DI RISTORANTE TIPOLOGIA COD_ML In questo caso l entità Menu Libero può essere eliminata in quanto non comporta alcuna informazione (ha solo un codice, associato ad uno ed un solo ristorante). Si ottiene quindi: PIATTO (1,N) (5,N) COMPOSIZIONE-LIBERO MENU LIBERO TIPOLOGIE HA (2,N) RISTORANTE TIPOLOGIA Spec. 4 I prodotti vengono forniti settimanalmente ai ristoranti da fornitori, con la seguente specifica: in una certa settimana, un prodotto è fornito ad un ristorante da uno ed un solo fornitore, in una certa quantità e ad un certo prezzo. Un fornitore può effettuare più forniture. Consideriamo un associazione ternaria FORNITURA (F) tra PRODOTTO, FORNITORE e RISTORAN- TE SETTIMANA RISTORANTE (1,N) F (1,N) PRODOTTO PREZZO (1,N) QUANTITA' FORNITORE

19 2.1. PROVA SCRITTA SI Siccome non posso ripetere la terna di istanze PRODOTTO, FORNITORE e RISTORANTE, un prodotto viene fornito ad un ristorante da un fornitore un unica voltà ; per tale fornitura viene riportata la settimana, il prezzo e la quantità. Se reifichiamo tale associazione ternaria, riportandovi quindi il suo identificatore costituito da PRODOTTO, FORNITORE e RISTORANTE che esprime appunto il fatto che un prodotto viene fornito ad un ristorante da un fornitore un unica voltà, otteniamo: RISTORANTE (1,N) B F A (1,N) PRODOTTO DA (1,N) FORNITORE Per semplicità nel disegno l identificatore di PRODOTTO è indicato direttamente sul ramo dell associazione: FORNITORE (1,N) DA RISTORANTE (1,N) B F A (1,N) PRODOTTO Pero il vincolo un prodotto viene fornito ad un ristorante da un fornitore un unica voltà non è quanto richiesto dalla specifica 1. Allora si deve innanzitutto togliere l identificatore RISTORANTE (1,N) B F A (1,N) PRODOTTO DA (1,N) FORNITORE 1 O meglio, questo viene richiesto solo dopo, nel punto facoltativo

20 20 CAPITOLO 2. ESERCIZIO 1 e quindi, per ottenere che in una certa settimana, un prodotto è fornito ad un ristorante da uno ed un solo fornitore, devo fare in modo che la terna PRODOTTO, RISTORANTE, SETTIMANA non si ripeta (sia un identificatore) in modo da associargli un unico FORNITORE: SETTIMANA RISTORANTE (1,N) B F A (1,N) PRODOTTO PREZZO DA QUANTITA' F=FORNITURA (1,N) FORNITORE Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo ai menu fissi: allo scopo di diversificare l offerta, un certo piatto non può comparire più di una volta nella composizione dei menu fissi di uno stesso ristorante.in altre parole, data la coppia RISTORANTE-PIATTO ho un unico MENUFISSO. In maniera analoga al puntoprecedente, devo fare in modo da formare una coppia univoca RISTORANTE- PIATTO al quale associare unmenufisso : RISTORANTE (1,N) B SOLO_IN A (1,N) PIATTO (6,6) COMPOSIZIONE (5,8) DI MENU FISSO COD_MF Nel precedente schema ho un ciclo: per una coppia RISTORANTE-PIATTO ho un unico MENUFISSO, ma nonposso garantire nell E/R che sia dello stesso RISTORANTE... Nel precedente schema si noti la cardinalità di menufisso in Composizione: tale cardinalità hasenso se considero il menu fisso associato ad un unico ristorante; in caso contrario:

21 2.1. PROVA SCRITTA SI RISTORANTE (1,N) B SOLO_IN A (1,N) PIATTO (6,6) COMPOSIZIONE (5,N) DI (1,N) MENU FISSO COD_MF Facoltativo Aggiungere allo schema E/R il seguente vincolo relativo alle forniture di prodotti: un certo fornitore può fornire un certo prodotto ad un certo ristorante una ed una sola volta. FORNITORE (1,N) DA RISTORANTE (1,N) B F A (1,N) PRODOTTO Considerazione su vincolo non esprimibile in E/R Nelle tre pagine aggiuntive che seguono vengono riportate alcune considerazioni sui vincoli non esprimibili con il modello E/R.

22 22 CAPITOLO 2. ESERCIZIO 1 Considerazioni su vincolo non esprimibile in E/R Consideriamo la seguente descrizione: Per ogni ristorante viene riportato anche un menu libero, indicando i piatti disponibili suddivisisi per tipologia (ad esempio, Antipasti, Primi, Dessert, e cosi via): ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. In particolare questa descrizione contiene i seguenti vincoli di cardinalità : ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. Lo schema corrispondente è il seguente: Consideriamo ora il seguente vincolo aggiuntivo: In un menu libero, un piatto può comparire al massimo una volta, con una precisa tipologia. Si vuole verificare che tale vincolo non può essere espresso sul precedente schema, o, più precisamente, non si possono esprimere in un solo schema sia i vincoli di cardinalità dati nella descrizione iniziale che il vincolo aggiuntivo. Singolarmente il vincolo aggiuntivo è molto semplice da esprimere, poiché corrisponde ad una associazione binaria, che chiameremo IN, tra PIATTO e MENULIBERO. Aggiungendo tale associazione allo schema precedente si ottiene: In questo modo si ottiene un ciclo tra MENULIBERO e PIATTO: ci sono due cammini tra MENU LIBERO e PIATTO, ovvero le due associazioni di MENU LIBERO con PIATTO 1

23 2.1. PROVA SCRITTA SI ) quella diretta attraverso l associazione IN 2) quella indiretta attraverso l entita TIPOLOGIA e l associazione HA Questi due associazioni sono indipendenti tra di loro e di conseguenza partendo da un certo menu libero e seguendo i due cammini si arriva in due piatti che non sono vincolati ad essere uguali. In questo modo, il vincolo aggiuntivo imposto tramite l associazione IN viene violato quando si considerano le corrispondenze attraverso l entità TIPOLOGIA e l associazione HA. Verifichiamolo traducendo fedelmente lo schema E/R in relazionale MENULIBERO(CODICE, ) PIATTO(NOME,DESCR,PREZZO) TIPOLOGIA (CODICE, TIPOLOGIA) FK: CODICE REF. MENULIBERO HA (CODICE, TIPOLOGIA,NOME) FK: CODICE, TIPOLOGIA REF. TIPOLOGIA FK: NOME REF. PIATTO IN (CODICE, NOME, TIPOLOGIA) FK: CODICE REF. MENULIBERO FK: NOME REF. PIATTO Premessa: come vedremo parlando di Regole Aziendali e loro traduzione in relazionale, i vincoli di cardinalità (quale ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti ) non sono esprimibili in relazionale (salvo alcune cardinalità minima = e massima = 1) e per essi devono essere previsti altri meccanismi di controllo (quali trigger, store procedure) oppure essere implementati direttamente nelle applicazioni (ad esempio le maschere di ACCESS) che usano il database. Quindi i vincoli di cardinalità verranno implementati successivamente. Nello schema relazionale è evidente che l associazione tra MENULIBERO e PIATTO fatta tramite HA è indipendente da quella fatta tramite IN e che attraverso HA possiamo associare un piatto più volte allo stesso menu libero e quindi violare il vincolo aggiuntivo. Allora per non violare tale vincolo aggiuntivo, non si considera l associazione HA e quindi le corrispondenze tra PIATTO e MENU LIBERO verranno espresse solo nella relazione IN, ottenendo il seguente schema) HA (CODICE, TIPOLOGIA,NOME) FK: CODICE, TIPOLOGIA REF. TIPOLOGIA FK: NOME REF. PIATTO IN (CODICE, NOME, TIPOLOGIA) FK: CODICE REF. MENULIBERO FK: NOME REF. PIATTO FK: CODICE, TIPOLOGIA REF. TIPOLOGIA Se nello schema relazionale si ottiene il vincolo aggiuntivo eliminando l associazione HA, perché non fare la stessa cosa in E/R, cioè perché in E/R non metter l identificatore MENU LIBERO + PIATTO direttamente su TIPOLOGIA, cioè considerare: 2

24 24 CAPITOLO 2. ESERCIZIO 1 In questo modo però nello schema E/R non posso più esprimere i vincoli di cardinalità ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. Nel precedente schema dovrei comunque togliere l identificatore TIPOLOGIA + MENU LIBERO (altrimenti in un MENU LIBERO ad una TIPOLOGIA corrisponderebbe un unico piatto) Conclusione: Come affermato più volte vari tipi di vincoli di integrità non possono essere espressi direttamente dai costrutti del modello E/R. (Vedere libro, 1.7 Documentazione di schemi E/R) Nell esempio in esame è stato considerato un caso particolare di tale situazione: due vincoli di integrità (quello sulle cardinalità e quello aggiuntivo) che separatamente possono essere rappresentati, non possono essere rappresentati congiuntamente sullo stesso schema. 3

25 2.1. PROVA SCRITTA SI Reverse engineering di schemi relazionali in schemi E/R Nella discussione precedente, dopo aver considerato lo schema relazionale MENULIBERO(CODICE, ) PIATTO(NOME,DESCR,PREZZO) TIPOLOGIA (CODICE, TIPOLOGIA) FK: CODICE REF. MENULIBERO IN (CODICE, NOME, TIPOLOGIA) FK: NOME REF. PIATTO FK: CODICE, TIPOLOGIA REF. TIPOLOGIA È stato considerato lo schema E/R Il passaggio da uno schema relazionale ad uno schema E/R equivalente prende il nome di Reverse engineering di schemi relazionali in schemi E/R. Tale processo è un passo fondamentale del reengineering di un sistema informativo, in quanto spesso l azienda ha già in uso dei database relazionali 4

26 26 CAPITOLO 2. ESERCIZIO Prova Scritta SI PROVA SCRITTA - 13/12/2002 Esercizio 1 Progettare lo schema E/R per la gestione della fureria di una caserma secondo le seguenti specifiche. Spec. 1 Un militare è descritto tramite gli usuali dati anagrafici; tra i militari si distinguono gli ufficiali che hanno un grado militare. Ogni militare può svolgere giornalmente un unico incarico; gli incarichi si suddividono in ordinari e speciali; per gli incarichi ordinari occorre riportare solo una descrizione mentre per quelli speciali occorre riportare, oltre alla descrizione, l ufficiale che ha assegnato tale incarico. Spec. 2 Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma; per questi incarichi speciali occorre indicare anche il luogo, l ora di inizio e la durata. Spec. 2 bis Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa a più luoghi e, viceversa, su un certo luogo possono svolgersi più guardie. Spec. 2 ter Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa ad un solo luogo e su un certo luogo possono svolgersi più guardie. In un luogo in una certa data c è una ed una sola guardia. Spec. 3 Una esercitazione militare è descritta da un codice, una data e dal nome della località in cui svolge. Ad un esercitazione partecipano almeno 100 militari e a ciascuno di essi è assegnato, all interno dell esercitazione in questione, un numero univoco, cioè ad un militare è assegnato durante una esercitazione un solo numero e ad un numero, in una esercitazione, corrisponde un solo militare. Un militare può partecipare a una o più esercitazioni. Spec. 4 Durante una esercitazione viene consegnata ad un militare una certa arma e si deve tener conto del numero di colpi sparati con tale arma; ovviamente, durante una esercitazione, un arma è assegnata ad un preciso militare. Un arma è descritta da un codice univoco e da un tipo. Facoltativo Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; un arma può sostituire un arma con malfunzionamenti piu di una volta. Facoltativo bis Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; durante una esercitazione, un arma può sostituire SOLO un arma con malfunzionamenti.

27 2.2. PROVA SCRITTA SI Soluzione Riportiamo e discutiamo i punti fondamentali; in alcune entità gli attributi semplici sono omessi. Spec. 1 Un militare è descritto tramite gli usuali dati anagrafici; tra i militari si distinguono gli ufficiali che hanno un grado militare. Ogni militare può svolgere giornalmente un unico incarico; gli incarichi si suddividono in ordinari e speciali; per gli incarichi ordinari occorre riportare solo una descrizione mentre per quelli speciali occorre riportare, oltre alla descrizione, l ufficiale che ha assegnato tale incarico. E semplice ; riportato direttamente nello schema che segue. Spec. 2 Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma; per questi incarichi speciali occorre indicare anche il luogo, l ora di inizio e la durata. Per rappresentare gli incarichi (Ogni militare può svolgere giornalmente un unico incarico) si introduce una entità INCARICO identificata dalla data e dal militare. L entità INCARICO è partizionata in ORDINARIO e SPECIALE; DATA CF DATIANAG MILITARE (0,N) INCARICO DESCRIZIONE (t,e) GRADO UFFICIALE (0,N) SPECIALE ORDINARIO ASSEGNA ORAINIZIO DURATA GUARDIA LUOGHICASERMA(1,N) Spec. 2 bis Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa a più luoghi e, viceversa, su un certo luogo possono svolgersi più guardie. Gli attributi LUOGHICAS, ORAINIZ e DATA vengono eliminati da GUARDIA e si introduce l entità LUOGOCAS rappresenta i luoghi delle caserme. NOMELUOGO ORAINIZIO DURATA LUOGOCAS (1,N) IN (1,N) GUARDIA Spec. 2 ter Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa ad un solo luogo e su un certo luogo possono svolgersi più guardie. In un luogo in una certa data c è una ed una sola guardia. NOMELUOGO ORAINIZIO DURATA LUOGOCAS (1,N) IN GUARDIA

28 28 CAPITOLO 2. ESERCIZIO 1 Per ottenere che in un luogo in una certa data c è una ed una sola guardia, occorre identificare l entità GUARDIA con DATA e LUOGOCAS: NOMELUOGO DATA ORAINIZIO DURATA LUOGOCAS (1,N) IN GUARDIA Si noti che l attributo DATA su LUOGOCAS è ereditato da INCARICO: tale attributo è ripetuto in GUARDIA solo per indicare l identificatore dell entità. Spec. 3 Una esercitazione militare è descritta da un codice, una data e dal nome della località in cui svolge. Ad un esercitazione partecipano almeno 100 militari e a ciascuno di essi è assegnato, all interno dell esercitazione in questione, un numero univoco, cioè ad un militare è assegnato durante una esercitazione un solo numero e ad un numero, in una esercitazione, corrisponde un solo militare. Un militare può partecipare a una o più esercitazioni. Lo schema E/R corrispondente a questa specifica è il seguente (non sono riportati gli attributi relativi ad esercitazione): NUMERO ESERCITAZ (1,100) PARTECIP. (0,N) MILITARE Spec. 4 Durante una esercitazione viene consegnata ad un militare una certa arma e si deve tener conto del numero di colpi sparati con tale arma; ovviamente, durante una esercitazione, un arma è assegnata ad un preciso militare. Un arma è descritta da un codice univoco e da un tipo. E importante notare il fatto che l arma è assegnata al militare durante una esercitazione, ovvero mentre il militare partecipa ad una esercitazione: quindi l arma deve essere associata alla partecipazione del militare all esercitazione, ovvero all entità PARTECIPAZIONE: NUMEROCOLPI PARTECIP. USA (0,N) ARMA Ora consideriamo che durante una esercitazione, un arma è assegnata ad un preciso militare - occorre aggiungere un altro identificatore all entità PARTECIPAZIONE NUMEROCOLPI ESERCITAZ (1,100) PARTECIP. USA (0,N) ARMA

29 2.2. PROVA SCRITTA SI Facoltativo Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; un arma può sostituire un arma con malfunzionamenti piu di una volta. Per considerare che durante un esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva. Si noti che l arma sostitutiva deve essere indicata per un arma durante una esercitazione, quindi occorre indicare un arma sostitutiva relativamente al concetto che lega l arma alla esercitazione, ovvero all entita PARTECIPAZIONE. Si introduce pertanto l associazione ARMASOSTITUTIVA tra PARTECIPAZIONE e ARMA con l attributo multiplo MALFUNZIONAMENTI: MALFUNZIONAMENTI (1,N) ARMASOSTITUTIVA (0,1) NUMEROCOLPI (0,N) ESERCITAZ (1,100) PARTECIP. USA (0,N) ARMA Si noti che un arma può sostituire un arma con malfunzionamenti piu di una volta quindi MAX-CARD(ARMA,ARMASOSTITUTIVA) = N. Facoltativo bis Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; durante una esercitazione, un arma può sostituire SOLO un arma con malfunzionamenti. Per ottenere questa specifica non possiamo mettere nello schema precedente MAX-CARD(ARMA,ARMASOSTITUTIVA) = 1 perchè altrimenti un arma la uso come sostitutiva una ed una sola volta. Il problema si risolve introducendo come identificatore PARTECIPAZIONE anche ESERCITAZIONE + ARMA tramite l associazione ARMASOSTITUTIVA. Però questo identificatore non può essere messo direttamente su PARTECIPAZIONE in quanto PARTECIPAZIONE è parziale nell associazione ARMASOSTITUTIVA. Per aggiungere tale identificatore si dovrebbe introdurre una sottoclasse di PARTECIPAZIONE DA FINIRE

30 30 CAPITOLO 2. ESERCIZIO Prova Scritta SI PROVA SCRITTA - 27/06/2005 Esercizio 1 (18 punti) Progettare lo schema E/R di un sistema informativo che memorizza informazioni su un archivio di fotografie, secondo le seguenti specifiche. Spec. 1 Le fotografie hanno un codice identificativo e una descrizione. Una fotografia è relativa ad un luogo. Ogni luogo, che ha una descrizione ed una tipologia, è identificato da un codice che è univoco all interno della provincia alla quale il luogo appartiene. La provincia ha una sigla e una descrizione. Spec. 2 Una fotografia è scattata con una macchina fotografica, identificata dalla marca e dal modello, che può essere analogica o digitale. Per le macchine digitali occorre indicare la capacità del sensore e la potenza dello zoom ottico; per le macchine analogiche la marca dell ottica montata. Spec. 3 I fotografi e gli utenti sono descritti dagli usuali dati anagrafici; inoltre, gli utenti hanno anche un nomeutente, ovviamente unico. Una fotografia fa parte di un servizio fotografico. Un servizio fotografico è realizzato da un fotografo, ha una data ed una descrizione; in una certa data, un fotografo può realizzare un solo servizio fotografico; un servizio fotografico contiene da 5 a 100 fotografie. Spec. 4 Il sistema informativo permette l accesso ad utenti che possono esprimere un voto per le fotografie, con il vincolo che un utente voti una sola volta per una fotografia. Ogni voto ha la data in cui viene espresso e può essere corredato da più motivazioni. In una certa data, un utente può esprimere al massimo un solo voto. Spec. 4 bis Il sistema informativo permette anche a critici di giornali di effettuare recensioni sui servizi fotografici. Un critico è caratterizzato dagli usuali dati anagrafici. Il critico scrive una recensione di servizio fotografico che può fare riferimento ad altre recensioni.

31 2.3. PROVA SCRITTA SI Soluzione Riportiamo e discutiamo i punti fondamentali; in alcune entità gli attributi semplici sono omessi. Spec. 1 Le fotografie hanno un codice identificativo e una descrizione. Una fotografia è relativa ad un luogo. Ogni luogo, che ha una descrizione ed una tipologia, è identificato da un codice che è univoco all interno della provincia alla quale il luogo appartiene. La provincia ha una sigla e una descrizione. Conviene introdurre Provincia come entità in quanto ha un identificatore (si può ovviamente considerare la sigla come univoca e quindi come identificatore di provincia) ed una descrizione. DESCR. COD DESCR. COD DESCR. SIGLA FOTOGRAFIA DEL (1,N) LUOGO IN (1,N) PROVINCIA Spec. 2 Una fotografia è scattata con una macchina fotografica, identificata dalla marca e dal modello, che può essere analogica o digitale. Per le macchine digitali occorre indicare la capacità del sensore e la potenza dello zoom ottico; per le macchine analogiche la marca dell ottica montata. È evidente che per descrivere macchina fotografica conviene introdurre una specializzazione in analogica e digitale. MARCA MODELLO MACCHINA (1,N) SCATTO FOTOGRAFIA (T,E) DIGITALE ANALOGICA Spec. 3 I fotografi e gli utenti sono descritti dagli usuali dati anagrafici; inoltre, gli utenti hanno anche un nomeutente, ovviamente unico. Una fotografia fa parte di un servizio fotografico. Un servizio fotografico è realizzato da un fotografo, ha una data ed una descrizione; in una certa data, un fotografo può realizzare un solo servizio fotografico; un servizio fotografico contiene da 5 a 100 fotografie. Per i fotografi e gli utenti si introduce una entità comune UTENTE/FOTOGRAFO che deve essere specializzata in UTENTE, in quanto solo per tale entità é valido l identificatore nomeutente. Conviene inoltre introdurre anche la specializzazione FOTOGRAFO in quanto il fotografo, anche se non ha degli attributi propri viene utilizzato nella descrizione del servizio fotografico. L entità UTENTE/FOTOGRAFO può essere anche chiamata PERSONA: il fatto che siano fotografi ed utenti si vede dalla gerarchia di generalizzazione.

32 32 CAPITOLO 2. ESERCIZIO 1 FOTOGRAFIA IN (5,100) SERVIZIO FOTOGR. DI DESCRIZIONE DATA (1,N) FOTOGRAFO NOMEUTENTE UTENTE (t,s) CF DATIANAGRAFICI UTENTE/ FOTOGRAFO Spec. 4 Il sistema informativo permette l accesso ad utenti che possono esprimere un voto per le fotografie, con il vincolo che un utente voti una sola volta per una fotografia. Ogni voto ha la data in cui viene espresso e può essere corredato da più motivazioni. In una certa data, un utente può esprimere al massimo un solo voto. Il voto riguarda un utente ed una fotografia, quindi viene espresso tramite una associazione binaria che chiamiamo VOTAZIONE tra UTENTE e FOTOGRAFIA. Si noti che tale associazione descrive solo il legame logico tra una foto ed un utente (ovvero solo il fatto che un utente ha votato per una certa foto); per esprimere il valore del voto occorre mettere un attributo voto per tale associazione; inoltre si aggiunge su tale associazione un attibuto data e motivazione (come attributo multiplo). Possiamo assumere che VOTAZIONE sia molti-a-molti: un utente vota più fotografie e, viceversa, su una foto verranno fatte più votazioni; assumiamo inoltre che entrambe le entità partecipino in modo opzionale. VOTO DATA FOTOGRAFIA (0,N) VOTAZIONE (0,N) UTENTE MOTIVAZIONI(1,N) L associazione binaria VOTAZIONE esprime già il vincolo che un utente voti una sola volta per una fotografia : è inutile reificare tale associazione. Per aggiungere allo schema E/R il vincolo che in una certa data, un utente può esprimere al massimo un solo voto: Il vincolo equivale a dire che in una certa data, un utente può effettuare al massimo una votazione, ovvero che VOTAZIONE deve essere identificato da data e da UTENTE. Allora si reifica l associazione (si noti che per definizione l identificatore di VOTAZIONE è UTENTE e FOTOGRAFIA: tale identificatore eve restare perchè deve continuare ad essere valido il vincolo che un utente voti una sola volta per una fotografia ):

Progettazione base dati relazionale

Progettazione base dati relazionale Progettazione base dati relazionale Prof. Luca Bolognini E-Mail:luca.bolognini@aliceposta.it Progettare una base di dati Lo scopo della progettazione è quello di definire lo schema della base di dati e

Dettagli

Progettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1]

Progettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1] Progettazione di basi di dati Progettazione di basi di dati Requisiti progetto Base di dati Struttura Caratteristiche Contenuto Metodologia in 3 fasi Progettazione concettuale Progettazione logica Progettazione

Dettagli

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino Progettazione logica Progettazione logica Richiede di scegliere il modello dei dati!modello relazionale Obiettivo: definizione di uno schema logico relazionale corrispondente allo schema ER di partenza

Dettagli

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di una facoltà e si definisca

Dettagli

Progettazione di un DB....in breve

Progettazione di un DB....in breve Progettazione di un DB...in breve Cosa significa progettare un DB Definirne struttura,caratteristiche e contenuto. Per farlo è opportuno seguire delle metodologie che permettono di ottenere prodotti di

Dettagli

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Database Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Cos'è un database? È una struttura di dati composta da tabelle a loro volta composte da campi. Caratteristiche

Dettagli

Informatica per l'impresa. Sistemi per la gestione di basi di Dati

Informatica per l'impresa. Sistemi per la gestione di basi di Dati Informatica per l'impresa Sistemi per la gestione di basi di Dati Prof. Mauro Gaspari gaspari@cs.unibo.it 1 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione

Dettagli

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

Dettagli

Rappresentazione grafica di entità e attributi

Rappresentazione grafica di entità e attributi PROGETTAZIONE CONCETTUALE La progettazione concettuale, ha il compito di costruire e definire una rappresentazione corretta e completa della realtà di interesse, e il prodotto di tale attività, è lo schema

Dettagli

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE I DATABASE o basi di dati possono essere definiti come una collezione di dati gestita dai DBMS. Tali basi di dati devono possedere determinati requisiti, definiti come specifiche, necessarie per il processo

Dettagli

Progettazione di un Database

Progettazione di un Database Progettazione di un Database Per comprendere il processo di progettazione di un Database deve essere chiaro il modo con cui vengono organizzati e quindi memorizzati i dati in un sistema di gestione di

Dettagli

La progettazione concettuale: il modello ER. 17/12/2007 Unità di Apprendimento A2 1

La progettazione concettuale: il modello ER. 17/12/2007 Unità di Apprendimento A2 1 La progettazione concettuale: il modello ER 17/12/2007 Unità di Apprendimento A2 1 1 La progettazione concettuale Prima di procedere con la progettazione concettuale è necessario effettuare un analisi

Dettagli

Informatica (Basi di Dati)

Informatica (Basi di Dati) Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.

Dettagli

Progettazione logica relazionale (1/2)

Progettazione logica relazionale (1/2) Progettazione di basi di dati (1/2) Introduzione Ristrutturazione dello schema ER Eliminazione delle gerarchie Partizionamento di concetti Eliminazione degli attributi multivalore Eliminazione degli attributi

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto IL MODELLO ER PER LA PROGETTAZIONE

Dettagli

Cultura Tecnologica di Progetto

Cultura Tecnologica di Progetto Cultura Tecnologica di Progetto Politecnico di Milano Facoltà di Disegno Industriale - DATABASE - A.A. 2003-2004 2004 DataBase DB e DataBase Management System DBMS - I database sono archivi che costituiscono

Dettagli

Informatica (Basi di Dati)

Informatica (Basi di Dati) Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Introduzione alle Basi di Dati Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati

Dettagli

Il modello Entity-Relationship: elementi di base

Il modello Entity-Relationship: elementi di base Il modello Entity-Relationship: elementi di base Sistemi Informativi T Versione elettronica: 06.1.ER.base.pdf I modelli concettuali dei dati Vogliamo pervenire a uno schema che rappresenti la realtà di

Dettagli

Introduzione alla progettazione. Metodologie e modelli per la progettazione di basi di dati. Il ciclo di vita dei sistemi informativi

Introduzione alla progettazione. Metodologie e modelli per la progettazione di basi di dati. Il ciclo di vita dei sistemi informativi Metodologie e modelli per la progettazione di basi di dati Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti Progettare: definire la struttura,

Dettagli

PROGETTAZIONE CONCETTUALE

PROGETTAZIONE CONCETTUALE Fasi della progettazione di basi di dati PROGETTAZIONE CONCETTUALE Parte V Progettazione concettuale Input: specifiche utente Output: schema concettuale (astrazione della realtà) PROGETTAZIONE LOGICA Input:

Dettagli

Progettazione concettuale

Progettazione concettuale Progettazione concettuale Strategie top-down A partire da uno schema che descrive le specifiche mediante pochi concetti molto astratti, si produce uno schema concettuale mediante raffinamenti successivi

Dettagli

database: modello entityrelationship

database: modello entityrelationship Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8 database: modello entityrelationship Prof.Valle D.ssaFolgieri Lez7 25.10.07 Trattamento dati. Database: modello entity-relationship 1 Fasi

Dettagli

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni LA PROGETTAZIONE DI BASI DI DATI Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni La progettazione dei dati è l attività più importante Per progettare i dati al

Dettagli

Università degli Studi di Torino Facoltà di Economia

Università degli Studi di Torino Facoltà di Economia Università degli Studi di Torino Facoltà di Economia Corso di Information and Communication Technology II Progettazione di basi di dati: introduzione, il modello E-R, traduzione da E-R a relazionale --

Dettagli

Progettazione Logica. Progettazione Logica

Progettazione Logica. Progettazione Logica Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Tabelle per ogni concetto Docente: Cesare Colombo CEFRIEL colombo@cefriel.it http://www.cefriel.it Passaggio al modello logico (1)

Dettagli

Alessandra Raffaetà. Basi di Dati

Alessandra Raffaetà. Basi di Dati Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati

Dettagli

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Roccatello Ing. Eduard L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE Agenda Presentazione docente Definizione calendario Questionario pre corso

Dettagli

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati) Corso di Informatica (Basi di Dati) Lezione 1 (12 dicembre 2008) Introduzione alle Basi di Dati Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof. Carlo Batini,

Dettagli

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi

Dettagli

Basi di dati. Esercitazione ER. Paolo Papotti. Esercizio 1.3.1. 1 giugno 2005

Basi di dati. Esercitazione ER. Paolo Papotti. Esercizio 1.3.1. 1 giugno 2005 Basi di dati Esercitazione ER 1 giugno 2005 Paolo Papotti Esercizio 1.3.1 Si vuole realizzare una base di dati per la comunità scientifica di ricerca paleontologica. Si devono memorizzare i dati riguardanti

Dettagli

DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età

DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età PROGETTAZIONE LOGICA 7í0 Progettazione logica Obiettivo: ëtradurre" lo schema concettuale in uno schema logico che rappresenti gli stessi dati in maniera corretta ed eæciente Input: Output: æ schema concettuale

Dettagli

Cardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni

Cardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni e identificatori Codice (0,1) (1,1) Dirige Informatica Lezione 8 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2012 2013 1 Cognome

Dettagli

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)

Dettagli

Basi di Dati Relazionali

Basi di Dati Relazionali Corso di Laurea in Informatica Basi di Dati Relazionali a.a. 2009-2010 PROGETTAZIONE DI UNA BASE DI DATI Raccolta e Analisi dei requisiti Progettazione concettuale Schema concettuale Progettazione logica

Dettagli

Introduzione ai database I concetti fondamentali Database e DBMS Per comprendere appieno cos'è un Database e quali sono i vantaggi legati al suo impiego, soprattutto nel settore gestionale, è necessario

Dettagli

Traduzione da ER a Relazionale

Traduzione da ER a Relazionale Traduzione da ER a Relazionale Costruito lo schema concettuale (modello ER) occorre tradurre lo schema ottenuto in uno schema logico ad esso equivalente, nel nostro caso useremo il modello relazionale

Dettagli

Capitolo 8. Esercizio 8.1

Capitolo 8. Esercizio 8.1 Capitolo 8 Esercizio 8.1 Si consideri lo schema Entità-Relazione ottenuto come soluzione dell esercizio 7.4. Fare delle ipotesi sul volume dei dati e sulle operazioni possibili su questi dati e, sulla

Dettagli

Basi di Dati. Conversione Modello ER in Modello Relazionale. K. Donno - Conversione Modello ER in Modello Relazionale

Basi di Dati. Conversione Modello ER in Modello Relazionale. K. Donno - Conversione Modello ER in Modello Relazionale Basi di Dati Conversione Modello ER in Modello Relazionale Il Modello Relazionale che rappresenta la realtà di interesse può essere ricavato direttamente dal Modello ER attraverso una sequenza di operazioni

Dettagli

Cardinalità. Informatica. Cardinalità. Cardinalità. Cardinalità. Cardinalità. Cardinalità delle associazioni:

Cardinalità. Informatica. Cardinalità. Cardinalità. Cardinalità. Cardinalità. Cardinalità delle associazioni: Informatica Lezione 3 Laurea magistrale in Psicologia Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2008-2009 delle associazioni: engono specificate per ciascuna partecipazione

Dettagli

Basi di Dati. Progettazione del Modello ER. K. Donno - Progettazione del Modello ER

Basi di Dati. Progettazione del Modello ER. K. Donno - Progettazione del Modello ER Basi di Dati Progettazione del Modello ER Dai requisiti allo schema ER Entità, relazioni e attributi non sono fatti assoluti dipendono dal contesto applicativo Nella pratica si fa spesso uso di una strategia

Dettagli

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB MODULO 5 DATA BASE MODULO 5 - DATA BASE 1 PROGRAMMA Introduzione: concetti generali di teoria Progettazione rapida introduzione alla progettazione di DB Utilizzo di Access pratica sulla creazione e l utilizzo

Dettagli

PROGETTAZIONE DI UN DATABASE

PROGETTAZIONE DI UN DATABASE Indice PROGETTAZIONE DI UN DATABASE 1.Il modello ER (entity relationship)...1 Generalità...1 I costrutti principali del modello...2 Entità...2 Associazioni...2 Attributi...2 Altri costrutti del modello...2

Dettagli

BASI DI DATI - : I modelli di database

BASI DI DATI - : I modelli di database BASI DI DATI - : I modelli di database DAL 1960 ci si e' orientati verso 3 direzioni: 1 MODELLO GERARCHICO Se i dati si presentano naturalmente in una struttura ad albero (ES. File System) Limiti: rigidità

Dettagli

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2009/2010 Progettazione e realizzazione di un applicativo Web Annunci Immobiliari 1 Scopo del progetto Si vuole realizzare un applicazione

Dettagli

PERSONA UOMO MILITARE

PERSONA UOMO MILITARE Capitolo 6 Esercizio 6.1 Considerare lo schema ER in figura 6.36: lo schema rappresenta varie proprietà di uomini e donne. Correggere lo schema tenendo conto delle proprietà fondamentali delle generalizzazioni.

Dettagli

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7 Il trattamento dei dati database: il linguaggio SQL seconda parte Prof. Valle D.ssa Folgieri Lez9 15.11.06 Trattamento dati. Database: il

Dettagli

Progettazione logica: regole di traduzione

Progettazione logica: regole di traduzione Progettazione logica: regole di traduzione Sistemi Informativi T Versione elettronica: 08.1.progLogica.traduzione.pdf Il secondo passo requisiti del Sistema Informativo progettazione concettuale cosa si

Dettagli

Esercitazione 3: progettazione logica. Sistemi Informativi L-B. Home Page del corso: http://www-db.deis.unibo.it/courses/sil-b/

Esercitazione 3: progettazione logica. Sistemi Informativi L-B. Home Page del corso: http://www-db.deis.unibo.it/courses/sil-b/ Esercitazione 3: progettazione logica Sistemi Informativi L-B Home Page del corso: http://www-db.deis.unibo.it/courses/sil-b/ Versione elettronica: esercitazione3.pdf Sistemi Informativi L-B Progettazione

Dettagli

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome. Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano

Dettagli

Il modello Entity-Relationship per il progetto delle basi di dati

Il modello Entity-Relationship per il progetto delle basi di dati 1 Il modello Entity-Relationship per il progetto delle basi di dati Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova Le metodologie di progettazione delle Basi di Dati 2 Una metodologia

Dettagli

Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006. Esercizi entità relazione risolti. a cura di Angela Campagnaro 802749

Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006. Esercizi entità relazione risolti. a cura di Angela Campagnaro 802749 Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006 Esercizi entità relazione risolti a cura di Angela Campagnaro 802749 Indice: Esercizio 1: Un insieme di officine 1.1 Testo esercizio.3

Dettagli

DB-MAIN CASE tool. Un tool per la progettazione di DB relazionali. http://www.info.fundp.ac.be/~dbm/tool.shtml. DB-MAIN case-tool: funzionalità

DB-MAIN CASE tool. Un tool per la progettazione di DB relazionali. http://www.info.fundp.ac.be/~dbm/tool.shtml. DB-MAIN case-tool: funzionalità DB-MAIN CASE tool Un tool per la progettazione di DB relazionali http://www.info.fundp.ac.be/~dbm/tool.shtml DB-MAIN case-tool: funzionalità Tool di supporto al system engineering: attività di forward

Dettagli

Fasi del progetto ( 1 )

Fasi del progetto ( 1 ) Progetto 2004-2005 2005 Esercitazione delle lezioni 2, 3 e 4. 1 Fasi del progetto ( 1 ) Analisi dettagliata delle specifiche fornite dal committente. Questa fase è fondamentale per capire a fondo quali

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Prova scritta del corso di Basi di dati attive 17 Dicembre 1999. Agenzia

Prova scritta del corso di Basi di dati attive 17 Dicembre 1999. Agenzia Prova scritta del corso di Basi di dati attive 17 Dicembre 1999 Si desidera automatizzare la gestione dei banchetti organizzati da un agenzia di pubbliche relazioni. Le specifiche del sistema informativo,

Dettagli

La normalizzazione Trasformazione da concettuale a relazionale

La normalizzazione Trasformazione da concettuale a relazionale Oreste Signore (Oreste.Signore@cnuce.cnr.it) Definizione Il concetto di chiave Chiave primaria Chiave esterna L algebra relazionale Le operazioni Le operazioni speciali La normalizzazione Trasformazione

Dettagli

Progettazione di Database

Progettazione di Database Progettazione di Database Progettazione Concettuale: strutturazione della realtà che si vuole rappresentare secondo uno schema concettuale Dallo schema concettuale si ricava lo schema del database relazionale

Dettagli

Il modello Entity-Relationship: pattern di progettazione

Il modello Entity-Relationship: pattern di progettazione Il modello Entity-Relationship: pattern di progettazione Sistemi Informativi T Versione elettronica: 06.3.ER.pattern.pdf Soluzioni a problemi comuni In molti schemi E/R si ritrovano dei pattern comuni,

Dettagli

INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO

INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO Basi di dati: Microsoft Access INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO Database e DBMS Il termine database (banca dati, base di dati) indica un archivio, strutturato in modo tale

Dettagli

Basi di Dati e Microsoft Access

Basi di Dati e Microsoft Access Basi di Dati e Microsoft Access Lun: 16-18 e Mer: 14-17 Alessandro Padovani padoale@email.it Database: definizione Un database (DB) è una collezione di informazioni organizzata in gruppi, che consentono

Dettagli

Basi di dati. Le funzionalità del sistema non vanno però ignorate

Basi di dati. Le funzionalità del sistema non vanno però ignorate Basi di dati La progettazione di una base di dati richiede di focalizzare lo sforzo su analisi, progettazione e implementazione della struttura con cui sono organizzati i dati (modelli di dati) Le funzionalità

Dettagli

ESERCIZIARIO BASI DI DATI (Esercizi presi dagli esami degli anni scorsi del prof. Paolo Baldan)

ESERCIZIARIO BASI DI DATI (Esercizi presi dagli esami degli anni scorsi del prof. Paolo Baldan) ESERCIZIARIO BASI DI DATI (Esercizi presi dagli esami degli anni scorsi del prof. Paolo Baldan) MODELLAZIONE CONCETTUALE E RELAZIONALE ESERCIZIO 1: Si vuole costruire un database per la gestione di una

Dettagli

1.Tutte 2.Spesso P.IVAe le CF volte che si visualizza i dati un fornitore si mostranoanche. La mensa. La mensa

1.Tutte 2.Spesso P.IVAe le CF volte che si visualizza i dati un fornitore si mostranoanche. La mensa. La mensa Ristrutturare Osservazioni seguenti che possano indicazioni emergere lo schema sulle ER operazioni della slide frequenti successiva e indicando tenendo presenti i vincoli le 1.Tutte 2.Spesso P.IVAe le

Dettagli

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Si consideri il seguente schema di base di dati che vuole tenere traccia delle attività di un autofficina. MECCANICO (CodiceFiscale,

Dettagli

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007 Basi di dati Concetti introduttivi Ultima modifica: 26/02/2007 ESEMPIO INSEGNAMENTI Fisica, Analisi, Informatica Aule Docenti Entità Relazioni Interrogazioni St udent i Database 2 Tabella (I) STUDENTE

Dettagli

BASI DATI BIOINGEGNERIA ED INFORMATICA MEDICA. Lezione II - BioIngInfMed

BASI DATI BIOINGEGNERIA ED INFORMATICA MEDICA. Lezione II - BioIngInfMed BASI DATI BIOINGEGNERIA ED INFORMATICA MEDICA 1 Sistema Informativo Un sistema informativo (SI) è un componente di una organizzazione il cui obiettivo è gestire le informazioni utili per gli scopi dell

Dettagli

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. 2ELHWWLYL GD UDJJLXQJHUH SHU JOL VWXGHQWL alla fine dell esercitazione gli studenti dovranno essere in grado di: 1. utilizzare

Dettagli

11 - Progettazione Logica

11 - Progettazione Logica Corso di Laurea in Ingegneria Gestionale SAPIENZA Università di Roma Esercitazioni del corso di Basi di Dati Prof.ssa Catarci e Prof.ssa Scannapieco Anno Accademico 2011/2012 11 - Progettazione Logica

Dettagli

Progettazione di Basi di Dati

Progettazione di Basi di Dati Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello

Dettagli

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

ARCHIVI E DATABASE (prof. Ivaldi Giuliano) ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

70555 Informatica 3 70777 Sicurezza 2. 70555 Mario Rossi 70777 Anna Bianchi. Esempio istanza:

70555 Informatica 3 70777 Sicurezza 2. 70555 Mario Rossi 70777 Anna Bianchi. Esempio istanza: DOMANDE 1) Definire i concetti di schema e istanza di una base di dati, fornendo anche un esempio. Si definisce schema di una base di dati, quella parte della base di dati stessa che resta sostanzialmente

Dettagli

Biglietti e Ritardi: schema E/R

Biglietti e Ritardi: schema E/R Biglietti e Ritardi: schema E/R Ritardi: Progettazione dello schema di Fatto! Definire uno schema di fatto per analizzare i ritardi; in particolare l analisi deve considerare l aeroporto di partenza, mentre

Dettagli

Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti:

Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti: Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti: 1. Definire uno schema Entità/Relazione che descriva il problema 2. Definire uno schema logico

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

Dettagli

MODELLO E/R. Modellazione dei dati

MODELLO E/R. Modellazione dei dati MODELLO E/R Maria Mirto Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata, individuandone gli elementi caratterizzanti e i legami intercorrenti

Dettagli

Basi di dati 30 settembre 2010 Compito A

Basi di dati 30 settembre 2010 Compito A Basi di dati 30 settembre 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli

Dettagli

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO 20 SETTEMBRE 2012 Tempo a disposizione: 2 ore 30 minuti

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO 20 SETTEMBRE 2012 Tempo a disposizione: 2 ore 30 minuti Prof. L. Tanca e F. A. Schreiber APPELLO 20 SETTEMBRE 2012 Progettare la base di dati relativa alla situazione descritta nel seguito. Svolgere il progetto concettuale usando il modello ER, e il progetto

Dettagli

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO Modulo 1: IL LINGUAGGIO HTML Formato degli oggetti utilizzati nel Web Elementi del linguaggio HTML: tag, e attributi

Dettagli

LABORATORIO. 2 Lezioni su Basi di Dati Contatti:

LABORATORIO. 2 Lezioni su Basi di Dati Contatti: PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE Gennaro Cordasco e Rosario De Chiara {cordasco,dechiara}@dia.unisa.it Dipartimento di Informatica ed Applicazioni R.M. Capocelli Laboratorio

Dettagli

Facoltà di Farmacia - Corso di Informatica

Facoltà di Farmacia - Corso di Informatica Basi di dati Riferimenti: Curtin cap. 8 Versione: 13/03/2007 1 Basi di dati (Database, DB) Una delle applicazioni informatiche più utilizzate, ma meno conosciute dai non informatici Avete già interagito

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 2 Raffaella Gentilini 1 / 45 Sommario 1 Il DDL di SQL: Cancellazione ed Aggiornamento di una BD Cancellazione di Schemi, Tabelle, e Domini Aggiornamento di Tabelle

Dettagli

Progettazione concettuale usando il modello Entità-Relazione (ER) e Progettazione Logica

Progettazione concettuale usando il modello Entità-Relazione (ER) e Progettazione Logica Progettazione concettuale usando il modello Entità-Relazione (ER) e Progettazione Logica 1 Introduzione alla progettazione delle basi di dati v Progettazione concettuale (in questa fase si usa il modello

Dettagli

I Sistemi Informativi

I Sistemi Informativi I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e

Dettagli

LE ASSOCIAZIONI (parte 1) le associazioni parte 1 1

LE ASSOCIAZIONI (parte 1) le associazioni parte 1 1 LE ASSOCIAZIONI (parte 1) le associazioni parte 1 1 tipo della chiave La chiave di un entità può essere composta albergo località stabilimento nome località hotel_id nome provincia loc_id nome società

Dettagli

Definizione Un modello astratto è la rappresentazione formale di idee e conoscenze relative a un fenomeno.

Definizione Un modello astratto è la rappresentazione formale di idee e conoscenze relative a un fenomeno. MODELLI INFORMATICI 1 Definizione Un modello astratto è la rappresentazione formale di idee e conoscenze relative a un fenomeno. Aspetti di un modello: il modello è la rappresentazione di certi fatti;

Dettagli

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

La progettazione di un database

La progettazione di un database Corso di INFORMATICA AZIENDALE La progettazione di un database Sommario! Approccio preliminare al disegno: strumenti disponibili! Modello Entità/Relazioni (E/R)! Modello relazionale! Traduzione dello schema

Dettagli

Modello relazionale. ing. Alfredo Cozzi 1

Modello relazionale. ing. Alfredo Cozzi 1 Modello relazionale E fondato sul concetto matematico di relazione tra insiemi di oggetti Una relazione su n insiemi A1, A2,..,An è un sottoinsieme di tutte le n-uple a1,a2,,an che si possono costruire

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

ANNO SCOLASTICO: 2014-2015 DISCIPLINA: INFORMATICA CLASSE: 5 SI INDIRIZZO: SISTEMI INFORMATIVI DOCENTI: TISO EMANUELE BARBARA SECCHI

ANNO SCOLASTICO: 2014-2015 DISCIPLINA: INFORMATICA CLASSE: 5 SI INDIRIZZO: SISTEMI INFORMATIVI DOCENTI: TISO EMANUELE BARBARA SECCHI ANNO SCOLASTICO: 2014-2015 DISCIPLINA: INFORMATICA CLASSE: 5 SI INDIRIZZO: SISTEMI INFORMATIVI DOCENTI: TISO EMANUELE BARBARA SECCHI 1 2 ELENCO MODULI ARGOMENTI PRINCIPALI STRUMENTI PERIODO Base di Dati

Dettagli

Esercizi di progettazione E-RE

Esercizi di progettazione E-RE Consorzio per la formazione e la ricerca in Ingegneria dell'informazione E-RE Sbagliando si impara 5 novembre 2003 Gennaro Pepe gennaro.pepe@cefriel.it Introduzione In questa presentazione si trovano tre

Dettagli

Corso di Laboratorio di Basi di Dati

Corso di Laboratorio di Basi di Dati Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs

Dettagli

PROGETTAZIONE CONCETTUALE

PROGETTAZIONE CONCETTUALE PROGETTAZIONE CONCETTUALE 1 Il Modello Concettuale Nella progettazione concettuale la descrizione dei dati da rappresentare avviene a livello astratto indipendentemente dal computer e dal software utilizzato.

Dettagli

Composizione. Tipo. Pubblicità. Numero ripetizioni. (1,N) (1,1) Composizione. Tipo. Messaggio promozionale. Codice. Azienda. Prodotto.

Composizione. Tipo. Pubblicità. Numero ripetizioni. (1,N) (1,1) Composizione. Tipo. Messaggio promozionale. Codice. Azienda. Prodotto. Diagramma ER Giorno Ora fine Composizione Palinsesto Informazione Fiction Spettacolo Giornalista Restrizione Messaggio promozionale spazio Interruzione allocazione Azienda Posizione Pubblicità Prodotto

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 I lucidi del corso sono stati prodotti sulla base del

Dettagli

MODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

MODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni MODELLO E/R Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata individuandone

Dettagli

1. Analisi dei requisiti

1. Analisi dei requisiti 1. Analisi dei requisiti 1a. Requisiti espressi in linguaggio naturale 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 Si vuole realizzare una base di dati

Dettagli