350 likes | 545 Views
Basi di Dati e Sistemi Informativi. Esempi & Esercizi Il Modello Relazionale Home page del corso : http:// www.cs.unibo.it /~ difelice / dbsi /. Esercizio 0. Dati i seguenti insiemi : A= { a,b,c,d,e } B={d,1,2} Qual e’ la cardinalita ’ del prodotto cartesiano AxB ?
E N D
Basi di Dati e SistemiInformativi Esempi & Esercizi Il ModelloRelazionale Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/
Esercizio 0 • Datiiseguentiinsiemi: • A= {a,b,c,d,e} B={d,1,2} • Qual e’ la cardinalita’ del prodottocartesianoAxB? • {(d,a),(d,b)} e’ unarelazionevalidasuAxB • {(a,d),(e,2),(c,2)} e’ unarelazionevalidasuAxB • {(b,1),(b,2),(b,1)} e’ unarelazionevalidasuAxB
Esercizio 0 • Datiiseguentiinsiemi: • A= {a,b,c,d,e} B={d,1,2} • Qual e’ la cardinalita’ di AxB? 15 • {(d,a),(d,b)} e’ unarelazionevalidasuAxB • {(a,d),(e,2),(c,2)} e’ unarelazionevalidasuAxB • {(b,1),(b,2),(b,1)} e’ unarelazionevalidasuAxB
Esercizio1 • Definire lo schemadella base di datiriportata sotto. Quanteistanzesonorappresentate? ARTICOLI
Esercizio 1 • Definire lo schemadella base di datiriportata sotto. Quanteistanzesonorappresentate? ARTICOLI ARTICOLI(Codice,Autore,Conferenza,Sito,Anno,Pagine) #Instanze=#RighedellaRelazione=7
Esercizio1 • Utilizzodellanotazioneposizionale. ARTICOLI t t2 t3 t[Autore] ??? t[Sito] ??? t3[Pagine] ???
Esercizio 1.a • Indicare se la tabellaseguentecostituisceunarelazionevalidanelmodellorelazionale.
Esercizio 1.b • Indicare se la tabellaseguentecostituisceunarelazionevalidanelmodellorelazionale.
Esercizio 1.c • Indicare se la tabellaseguentecostituisceunarelazionevalidanelmodellorelazionale.
Esercizio2 (V/F) Data la relazioneseguente: IMPIEGATI Q. La tripla {Cognome, Progetto, Ufficio} e’ unasuperchiave. Q. L’attributoNome e’ unachiave a livello di istanza. Q. L’attributoNome e’ unachiave a livello di schema.
Esercizio2 (V/F) Data la relazioneseguente: IMPIEGATI Q. La tripla {Cognome, Progetto, Ufficio} e’ unasuperchiave. Q. L’attributoNome e’ unachiave a livello di istanza. Q. L’attributoNome e’ unachiave a livello di schema.
Esercizio2 (V/F) Data la relazioneseguente: IMPIEGATI Q. L’attributoCodice e’ unachiaveprimaria. Q. L’attributoNome e’ unachiave a livello di istanza. Q. Gliattributi {Cognome,Nome} sonounachiaveprimaria.
Esercizio 3 (V/F) Data la relazioneseguente: IMPIEGATI Q. L’attributoCodice e’ unachiaveprimaria. Q. L’attributoNome e’ unachiave a livello di istanza. Q. Gliattributi {Cognome,Nome} sonounachiaveprimaria.
Esercizio4 (V/F) • Ognirelazione ha almenounachiave. • Ognirelazione ha esattamenteunachiave. • Ogniattributoappartieneal massimo ad unachiave. • Possonoesistereattributiche non appartengono a nessunachiave. • Unachiavepuo’ esseresottoinsieme di un’altrachiave. • Puo’ esistereunachiavechecoinvolgetuttigliattributi. • Puo’ succederecheesistanopiu’ chiavieduna di essecoinvolgatuttigliattributi. • Ognirelazione ha almenounasuperchiave. • Ognirelazione ha esattamenteunasuperchiave. • Puo’ succederecheesistanopiu’ superchiavieduna di essecoinvolgatuttigliattributi.
Esercizio4 (V/F) • Ognirelazione ha almenounachiave. • Ognirelazione ha esattamenteunachiave. • Ogniattributoappartieneal massimo ad unachiave. • Possonoesistereattributiche non appartengono a nessunachiave. • Unachiavepuo’ esseresottoinsieme di un’altrachiave. • Puo’ esistereunachiavechecoinvolgetuttigliattributi. • Puo’ succederecheesistanopiu’ chiavieduna di essecoinvolgatuttigliattributi. • Ognirelazione ha almenounasuperchiave. • Ognirelazione ha esattamenteunasuperchiave. • Puo’ succederecheesistanopiu’ superchiavieduna di essecoinvolgatuttigliattributi.
Esercizio5 • Rappresentarenelmodellorelazionale le informazioni relative al trafficoaereogiornaliero di un aeroporto, in particolare: • I voli in ingresso (nr. volo, destinazione, oradecollo, codicecompagnia) • I voli in uscita(nr. volo, partenza, oraatterraggio, codicecompagnia) • Le informazioni sui passeggeri di ciascunvolo (nome, cognome, nr. prenotazione, posto). • Le compagnieaeree (codice, nome, nr di voliforniti)
Esercizio5 VOLI COMPAGNIA PASSEGGERI
Esercizio5 • Considerando lo schema relazionalemostratonella slide precedente, indicare: • Chiaviprimariedi ciascunarelazione. • Eventualivincoli di integrita’ referenzialetra le tabelle.
Esercizio5 VOLI COMPAGNIA PASSEGGERI
Esercizio6 LIBRO AUTORE EDITORI
Esercizio6 • Vincolo di integrita’ referenzialetra LIBRO.{Nome, • Cognome} e la relazione AUTORE. • Vincolo di integrita’ referenzialetraLIBRO.Editore • e la relazione EDITORI. • E’ possibilerimuovere la prima rigadellarelazione • LIBRO senzaviolareivincoli di integrita’ con la • relazione EDITORI. • E’ possibile fare ilviceversa?
Esercizio6 • Vincolo di integrita’ referenzialetra LIBRO.{Nome, • Cognome} e la relazione AUTORE. • Vincolo di integrita’ referenzialetraLIBRO.Editore • e la relazione EDITORI. • E’ possibilerimuovere la prima rigadellarelazione • LIBRO senzaviolareivincoli di integrita’ con la • relazione EDITORI. • E’ possibile fare ilviceversa?
Esercizio7 Dato lo schema relazionaleseguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.0 Identificareivincoli di integrita’ referenziale.
Esercizio7 • Dato lo schema relazionaleseguente: • AGENZIA(Nome, Indirizzo, Telefono) • CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) • INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) • PROPRIETARIO(Codice, Nome, Cognome, Telefono) • Q.1 Le due notazionisonoequivalenti? • INSERZIONI.IndirizzoCasa CASA.Indirizzo • INSERZIONI.InternoCasa CASA.NrInterno • INSERZIONI.{IndirizzoCasa,InternoCasa} CASA.{Indirizzo,NrInterno}
Esercizio7 Dato lo schema relazionaleseguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.2 Nellatabella CASA, ilCodProprietariopuo’ essere NULL.
Esercizio7 Dato lo schema relazionaleseguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.3 E’ possibileche la relazione CASA contenga 0 instanze, e la relazione PROPRIETARIO contenga 5 istanze(senzaviolareivincoli di integrita’ referenziale).
Esercizio7 Dato lo schema relazionaleseguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.4 E’ possibileche la relazione INSERZIONI contenga 10 instanze, e la relazione CASA contenga 5 istanze (senzaviolareivincoli di integrita’ referenziale).
Esercizio7 Dato lo schema relazionaleseguente: AGENZIA(Nome, Indirizzo, Telefono) CASA(Indirizzo,NrInterno,CAP,CodProprietario, Prezzo) INSERZIONI(IndirizzoCasa, InternoCasa, NomeAgenzia, DataInserzione) PROPRIETARIO(Codice, Nome, Cognome, Telefono) Q.5 E’ possibileche la relazione INSERZIONI contenga 10 instanze, e la relazione CASA contenga 0 istanze (senzaviolareivincoli di integrita’ referenziale).
Esercizio8 Dato lo schema relazionaleseguente: 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) Indicareipossibilivincoli di integrita’ referenziale.
Esercizio8 • Un giocatorepuo’ far parte di piu’ squadre. • Ogni partita ha sempre e solo 1 arbitrodesignato. • Ogni partita ha almeno un arbitrodesignato. • Ogni partita ha 0 o piu’ arbitridesignati. • Unasquadrapuo’ averepiu’ di 1 presidente. • Data.PARTITApuo’ essere non specificato.
Esercizio8 • Un giocatorepuo’ far parte di piu’ squadre. • Ogni partita ha sempre e solo 1 arbitrodesignato. • Ogni partita ha almeno un arbitrodesignato. • Ogni partita ha 0 o piu’ arbitridesignati. • Unasquadrapuo’ averepiu’ di 1 presidente. • Data.PARTITApuo’ essere non specificato.
Esercizio8 • Verificare se l’istanzarispettalo schema relazionale. FORMAZIONE GIOCATORE SQUADRA PARTITA
Esercizio9 • Rappresentarenelmodellorelazionale le informazioni relative ad ipazienti e medici di unaclinicaospedaliera. Ogni medico ha un codiceidentificativo, nome, cognome, e codice del reparto in cui opera. Ognipaziente e’ identificato da un codicerepartoe dal #di lettonelreparto, e dispone di nome, cognome, data di nascita. A ciascunpazientepossoneessere 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 stessopaziente. Ognireparto ha un codice, un nome, ed un # di lettidisponibili.
Esercizio9 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
Esercizio9 • Q.1 Cheaccadese rimuovo la fraseseguentedallaspecifiche: • “Ognimedico puo’ somministrare al max 1 cura per lo stessopaziente” • Q2 Estensionedello schema precedente: ognicurapuo’ esserecomposta da un numeroarbitrario di farmaci. Di ognifarmacosivoglionorappresentare le seguentiinformazioni: codice, nome, casa farmaceutica.