Basi di Dati e Sistemi Informativi Esercitazione: Il Modello Relazionale Home page del corso:
Esercizio 0 Dati i seguenti insiemi: A= {a,b,c,d,e} B={d,1,2} Qual e la cardinalita del prodotto cartesiano AxB? {(d,a),(d,b)} e una relazione valida su AxB {(a,d),(e,2),(c,2)} e una relazione valida su AxB {(b,1),(b,2),(b,1)} e una relazione valida su AxB
Esercizio 0 Dati i seguenti insiemi: A= {a,b,c,d,e} B={d,1,2} Qual e la cardinalita di AxB? 15 {(d,a),(d,b)} e una relazione valida su AxB {(a,d),(e,2),(c,2)} e una relazione valida su AxB {(b,1),(b,2),(b,1)} e una relazione valida su AxB
Esercizio 1 Definire lo schema della base di dati riportata sotto. Quante istanze sono rappresentate? CodiceAutoreConferenzaSitoAnnoPagine MarcoICCBologna MatteoINFOCOMLas Vegas LucaINFOCOMLas Vegas LuigiINFOCOMLas Vegas MatteoINFOCOMLas Vegas LucaMOBICOMNY CarloDYSPANLondra20125 ARTICOLI
Esercizio 1 Definire lo schema della base di dati riportata sotto. Quante istanze sono rappresentate? CodiceAutoreConferenzaSitoAnnoPagine ARTICOLI ARTICOLI (Codice,Autore,Conferenza,Sito,Anno,Pagine)
Esercizio 1 Definire lo schema della base di dati riportata sotto. Quante istanze sono rappresentate? CodiceAutoreConferenzaSitoAnnoPagine MarcoICCBologna MatteoINFOCOMLas Vegas LucaINFOCOMLas Vegas ARTICOLI t t2t2 t3t3 t[Autore] ??? t[Sito] ??? t 3 [Pagine] ???
Esercizio 1.a Indicare se la tabella seguente costituisce una relazione valida nel modello relazionale. CodiceAutoreConferenzaSitoAnnoPagine MarcoICCBologna MatteoINFOCOMLas Vegas LucaINFOCOMLas Vegas LuigiINFOCOMLas Vegas MatteoINFOCOMLas Vegas LucaMOBICOMNY CarloDYSPANLondra20125
Esercizio 1.b Indicare se la tabella seguente costituisce una relazione valida nel modello relazionale. CodiceAutoreConferenzaSitoAnnoPagine MarcoICCBologna MatteoINFOCOMLas Vegas LucaINFOCOMLas Vegas LuigiINFOCOMLas Vegas20118 NULL MatteoINFOCOMLas Vegas LucaMOBICOMNY CarloDYSPANLondra20125
Esercizio 1.c Indicare se la tabella seguente costituisce una relazione valida nel modello relazionale. CodiceAutoreConferenzaSitoAnnoPagine MarcoICCBologna20127 NULL MatteoINFOCOMLas Vegas LucaINFOCOMLas Vegas LuigiINFOCOMLas Vegas20118 NULL MatteoINFOCOMLas Vegas LucaMOBICOMNY CarloDYSPANLondra20125
Esercizio 2.a Rappresentare per mezzo di una o piu relazioni le informazioni relative al traffico aereo giornaliero di un aeroporto, in particolare: -I voli in ingresso (nr. volo, destinazione, ora decollo, codice compagnia) -I voli in uscita (nr. volo, partenza, ora atterraggio, codice compagnia) -Le informazioni sui passeggeri di ciascun volo (nome, cognome, nr. prenotazione, posto). -Le compagnie aeree (codice, nome, nr di voli forniti)
Esercizio 2.a CodiceDest.OrarioComp.Tipo AZ123Londra12:00amAZP AF12Parigi13:10pmAFP AZ125Monaco11:40amAZA LH124Dresda13:30LHA CodicePren.NomeCognomePosto AZ125#121MarcoDiFelice34D AZ125#124LucaRossi12A LH124#125MicheleBianchi5B CodiceNomeNum AZAlitalia2 LHLufthansa1 AFAirFrance1 VOLI PASSEGGERI COMPAGNIA
Esercizio 3 (V/F) Data la relazione seguente: CodiceNomeCognomeProgettoUfficio 123MicheleRossiIoE1A 124LucaBianchiIoE1A 125AntonioRossiARTEMIS1B 126GiorgioRossiARTEMIS1B 127DanieleVerdiNADIR1C IMPIEGATI Q. La tripla { Cognome, Progetto, Ufficio } e una superchiave. Q. Lattributo Nome e una chiave a livello di istanza. Q. Lattributo Nome e una chiave a livello di schema.
Esercizio 3 (V/F) Data la relazione seguente: CodiceNomeCognomeProgettoUfficio 123MicheleRossiIoE1A 124LucaBianchiIoE1A 125AntonioRossiARTEMIS1B 126GiorgioRossiARTEMIS1B 127DanieleVerdiNADIR1C IMPIEGATI Q. La tripla { Cognome, Progetto, Ufficio } e una superchiave. Q. Lattributo Nome e una chiave a livello di istanza. Q. Lattributo Nome e una chiave a livello di schema.
Esercizio 3 (V/F) Data la relazione seguente: CodiceNomeCognomeProgettoUfficio 123MicheleRossiIoE1A 124LucaBianchiIoE1A NULLAntonioRossiARTEMIS1B 126NULLRossiARTEMIS1B 127NULLVerdiNADIR1C IMPIEGATI Q. Lattributo Codice e una chiave primaria. Q. Lattributo Nome e una chiave a livello di istanza. Q. Gli attributi { Cognome,Nome } sono una chiave primaria.
Esercizio 3 (V/F) Data la relazione seguente: CodiceNomeCognomeProgettoUfficio 123MicheleRossiIoE1A 124LucaBianchiIoE1A NULLAntonioRossiARTEMIS1B 126NULLRossiARTEMIS1B 127NULLVerdiNADIR1C IMPIEGATI Q. Lattributo Codice e una chiave primaria. Q. Lattributo Nome e una chiave a livello di istanza. Q. Gli attributi { Cognome,Nome } sono una chiave primaria.
Esercizio 4 Considerando lo schema relazionale dellesercizio 2.a, indicare: Chiavi primarie di ciascuna relazione. Eventuali vincoli di integrita referenziale tra le tabelle.
Esercizio 4 CodiceDest.OrarioComp.Tipo AZ123Londra12:00amAZP AF12Parigi13:10pmAFP AZ125Monaco11:40amAZA LH124Dresda13:30LHA CodicePren.NomeCognomePosto AZ125#121MarcoDiFelice34D AZ125#124LucaRossi12A LH124#125MicheleBianchi5B CodiceNomeNum AZAlitalia2 LHLufthansa1 AFAirFrance1 VOLI PASSEGGERI COMPAGNIA
Esercizio 5 (V/F) Ogni relazione ha almeno una chiave. Ogni relazione ha esattamente una chiave. Ogni attributo appartiene al massimo ad una chiave. Possono esistere attributi che non appartengono a nessuna chiave. Una chiave puo essere sottoinsieme di unaltra chiave. Puo esistere una chiave che coinvolge tutti gli attributi. Puo succedere che esistano piu chiavi ed una di esse coinvolga tutti gli attributi. Ogni relazione ha almeno una superchiave. Ogni relazione ha esattamente una superchiave. Puo succedere che esistano piu superchiavi ed una di esse coinvolga tutti gli attributi. ESERCIZIO 2.9 del LIBRO di TESTO
Esercizio 5 (V/F) Ogni relazione ha almeno una chiave. Ogni relazione ha esattamente una chiave. Ogni attributo appartiene al massimo ad una chiave. Possono esistere attributi che non appartengono a nessuna chiave. Una chiave puo essere sottoinsieme di unaltra chiave. Puo esistere una chiave che coinvolge tutti gli attributi. Puo succedere che esistano piu chiavi ed una di esse coinvolga tutti gli attributi. Ogni relazione ha almeno una superchiave. Ogni relazione ha esattamente una superchiave. Puo succedere che esistano piu superchiavi ed una di esse coinvolga tutti gli attributi. ESERCIZIO 2.9 del LIBRO di TESTO
Esercizio 6 Dato lo schema relazionale seguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.0 Identificare i vincoli di integrita referenziale.
Esercizio 6 Dato lo schema relazionale seguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.1 Le due notazioni sono equivalenti: INSERZIONI.IndirizzoCasa CASA.Indirizzo INSERZIONI.InternoCasa CASA.NrInterno INSERZIONI.{IndirizzoCasa,InternoCasa} CASA.{Indirizzo,NrInterno}
Esercizio 6 Dato lo schema relazionale seguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.2 Nella tabella CASA, il CodProprietario puo NON essere specificato (senza violare i vincoli di integrita referenziale).
Esercizio 6 Dato lo schema relazionale seguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.3 E possibile che la relazione CASA contenga 0 instanze, e la relazione PROPRIETARIO contenga 5 istanze (senza violare i vincoli di integrita referenziale).
Esercizio 6 Dato lo schema relazionale seguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.4 E possibile che la relazione INSERZIONI contenga 10 instanze, e la relazione CASA contenga 5 istanze (senza violare i vincoli di integrita referenziale).
Esercizio 6 Dato lo schema relazionale seguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.5 E possibile che la relazione INSERZIONI contenga 10 instanze, e la relazione CASA contenga 0 istanze (senza violare i vincoli di integrita referenziale).
Esercizio 7 TitoloNome Autore Cognome Autore AnnoEditoreEdizione Intelligenza Meccanica AlanTuring1994Bollati1 UbikPhilipDick1969Fanucci1 Minority Report PhilipDick1970Fanucci1 UbikPhilipDick1979Feltrinelli2 I.A.NULL 1994Einaudi4 AndromedaMichaelCrichton1969Feltrinelli2 J. ParkMichaelCrichton1973Einaudi4 NULLOrsonWells1968NULL5 LIBRO
Esercizio 7 {Titolo, Autore} e una superchiave di LIBRO. {Titolo, Autore} e una chiave di LIBRO. {Titolo, Edizione} e una superchiave di LIBRO. {Titolo, Edizione} e una chiave di LIBRO. {Titolo, Anno, Edizione} e una superchiave. {Titolo, Anno, Edizione} e una chiave di LIBRO. {Titolo, Edizione} e una chiave primaria. {Titolo, Anno, Edizione} e una chiave primaria. {Anno, Edizione} e una chiave primaria a livello di schema.
Esercizio 7 {Titolo, Autore} e una superchiave di LIBRO. {Titolo, Autore} e una chiave di LIBRO. {Titolo, Edizione} e una superchiave di LIBRO. {Titolo, Edizione} e una chiave di LIBRO. {Titolo, Anno, Edizione} e una superchiave. {Titolo, Anno, Edizione} e una chiave di LIBRO. {Titolo, Edizione} e una chiave primaria. {Titolo, Anno, Edizione} e una chiave primaria. {Anno, Edizione} e una chiave primaria a livello di schema.
Esercizio 7.b TitoloNomeCognomeAnnoEditoreEdizione UbikPhilipDick1969Fanucci1 I.A.MichealCrichton1994Einaudi4 AndromedaMichaelCrichton1969Feltrinelli2 J. ParkMichaelCrichton1973Einaudi4 La guerra…OrsonWells1968Einaudi5 LIBRO AUTORE CodiceNomeCognomeAnno 122PhilipDick OrsonWells OrsonWells1967 EDITORI NomeSede FanucciTorino EinaudiRoma FeltrinelliBologna
Esercizio 7.b Vincolo di integrita referenziale tra LIBRO.{Nome, Cognome} e la relazione AUTORE. Vincolo di integrita referenziale tra LIBRO.Editore e la relazione EDITORI. E possibile rimuovere la prima riga della relazione LIBRO senza violare i vincoli di integrita con la relazione EDITORI. E possibile fare il viceversa?
Esercizio 7.b Vincolo di integrita referenziale tra LIBRO.{Nome, Cognome} e la relazione AUTORE. Vincolo di integrita referenziale tra LIBRO.Editore e la relazione EDITORI. E possibile rimuovere la prima riga della relazione LIBRO senza violare i vincoli di integrita con la relazione EDITORI. E possibile fare il viceversa?
Esercizio 8 Dato lo schema relazionale seguente: GIOCATORE (Codice, Nome, Cognome, Data Nascita) SQUADRA(Nome, Sede, Anno, Presidente) FORMAZIONE(CodGiocatore,NomeSquadra) PARTITA(Squadra1, Squadra2, Data, Punti1, Punti2) ARBITRO(Codice, Nome, Cognome, Data Nascita) DESIGNAZIONE(Squadra1, Squadra2, Data,NomeArbitro) Indicare i possibili vincoli di integrita referenziale.
Esercizio 8 Un giocatore puo far parte di piu squadre. Ogni partita ha sempre e solo 1 arbitro designato. Ogni partita ha almeno un arbitro designato. Ogni partita ha 0 o piu arbitri designati. Una squadra puo avere piu di 1 presidente. Data.PARTITA puo essere non specificato.
Esercizio 8 Un giocatore puo far parte di piu squadre. Ogni partita ha sempre e solo 1 arbitro designato. Ogni partita ha almeno un arbitro designato. Ogni partita ha 0 o piu arbitri designati. Una squadra puo avere piu di 1 presidente. Data.PARTITA puo essere non specificato.
Esercizio 8 Verificare se listanza rispetta lo schema relazionale. CodiceNomeCognomeNascita 1234AntonioRossiNULL 4567AntonioNULL10/05/ AntonioRossiNULL GIOCATORE NomeSedeAnnoPres. VirtusBologn a 1967NULL Pol. RossiBologn a 1987Giorgi Pol. VerdiNULL1999NULL SQUADRA NomeGNomeS 1234NULL 4567Virtus 4567Pol.Rossi FORMAZIONE S1S2DataP1P2 Pol. Gialli Pol. Rossi 10/03 / PARTITA
Esercizio 9 Rappresentare nel modello relazionale le informazioni relative ad i pazienti e medici di una clinica ospedaliera. Ogni medico ha un codice identificativo, nome, cognome, e codice del reparto in cui opera. Ogni paziente e identificato da un codice reparto e dal #di letto nel reparto, e dispone di nome, cognome, data di nascita. A ciascun paziente possone essere associate piu cure. La cura e composta dal nome di un farmaco, ha una data di inizio e fine, ed e somministrata da un medico. Ogni medico puo somministrare al max 1 cura per lo stesso paziente. Ogni reparto ha un codice, un nome, ed un # di letti disponibili.
Esercizio 9 MEDICO (Codice, Nome, Cognome, CodReparto) PAZIENTE (CodReparto, NrLetto, Nome, Cognome, Data) CURA (CodPaziente, LettoPaziente, CodMedico, FarmacoId,DataInizio, DataFine) REPARTO(Codice, Nome, NumeroLetti) Vincoli di integrita: CURA.{CodPaziente, LettoPaziente} PAZIENTE CURA.{CodMedico} MEDICO MEDICO.Reparto REPARTO PAZIENTE.CodReparto REPARTO
Esercizio 9 Q.1 Che accade se rimuovo la frase seguente dalla specifiche: Ogni medico puo somministrare al max 1 cura per lo stesso paziente Q2 Estensione dello schema precedente: ogni cura puo essere composta da un numero arbitrario di farmaci. Di ogni farmaco si vogliono rappresentare le seguenti informazioni: codice, nome, casa farmaceutica.