ESERCITAZIONE ER-1 Basi di Dati e di Conoscenza a.a. 2014-15
2 Esercizi (1) Discutere e rispondere alle seguenti domande: Discutere la nozione di indipendenza logica dei dati. Fornire TRE scenari applicativi dove l'uso di DBMS appare NECESSARIO e confrontare tali casi con almeno DUE situazioni in cui l'uso di DBMS non e' UTILE.
3 Esercizi (1a) 3. Discutere e confrontare tra loro le nozioni di schema logico, schema concettuale e schema esterno di una base di dati. 4. Discutere la architettura di un DBMS ed il ruolo svolto dalle singole componenti.
Basi di dati 4 Esercizio 2.2 (Schema ER) Un DB universitario contiene informazioni riguardo ai professori (identificati dal social security number, o SSN) e corsi (identificati da courseid). I professori insegnano corsi e tutte le situazioni seguenti riguardano la relazione "Teaches".
5 Testo e Domanda Un DB universitario contiene informazioni riguardo ai professori (identiifcati dal social security number, o SSN) e corsi (identificati da courseid). I professori insegnano corsi e tutte le situazioni seguenti riguardano la relazione "Teaches". Disegnare per ciascuna delle situazioni sottoelencate un diagramma ER che la descriva. Non si assumano alcuni vincoli se non quelli esplicitamente espressi per ciascun caso.
6 Situazione 1 1. I professori possono insegnare lo stesso corso in diversi semestri ed ognuno di queste situazioni va memorizzata separatamente nel DB.
7 Situazione 1 1. I professori possono insegnare lo stesso corso in diversi semestri ed ognuno di queste situazioni va memorizzata separatamente nel DB.
8 Situazione 2 2. Professori possono insegnare lo stesso corso in diversi semestri ma va memorizzata nel DB solo la piu' recente offerta didattica. (Si assuma tale condizione in tutto il resto della domanda)
9 Situazione 3 3. Ogni professore deve insegnare almeno un corso.
10 Situazione 4 4. Ogni professore deve insegnare esattamente un corso.
11 Situazione 5 5. Ogni professore deve insegnare esattamente un corso ed ogni corso deve essere insegnato da qualche professore.
12 Situazione 6 6. Supponendo che alcuni corsi possano essere insegnati da un team di professori, ma sia possibile che nessun professore del team insegni un corso
13 Soluzioni
14 Situazione 1 1. I professori possono insegnare lo stesso corso in diversi semestri ed ognuno di queste situazioni va memorizzata separatamente nel DB.
15 Per l ipotesi sono necessarie tre entita e tutte partecipano molte volte alla relazione Le tre chiavi forniranno la descrizione di Situazione 1 1. I tutte professori le situazioni possono diverse insegnare lo stesso corso in diversi semestri ed ognuno di queste situazioni va memorizzata separatamente nel DB.
16 Situazione 2 2. Professori possono insegnare lo stesso corso in diversi semestri ma solo la piu' recente offerta didattica va memorizzata nel DB. (Si assuma tale condizione in tutto il resto della domanda)
Situazione 2 2. Qui il semestre puo diventare attributo poiche lo stesso corso insegnato da un certo professore non deve essere rappresentato piu volte nel DB Basta l attributo unico semester In semester e memorizzata l ultima erogazione del corso 17
18 Situazione 3 3. Ogni professore deve insegnare almeno un corso.
19 Situazione 3 3. Ogni professore deve insegnare almeno un corso. Partecipazione TOTALE
20 Situazione 4 4. Ogni professore deve insegnare esattamente un corso.
21 Situazione 4 4. Ogni professore deve insegnare esattamente un corso. Molti (professori) ad uno (corso) + Partecipazione TOTALE
22 Situazione 5 5. Ogni professore deve insegnare esattamente un corso ed ogni corso deve essere insegnato da qualche professore.
23 Situazione 5 5. Ogni professore deve insegnare esattamente un corso ed ogni corso deve essere insegnato da qualche professore. Molti (professori) ad uno (corso) + Partecipazioni TOTALI
24 Situazione 6 6. Supponendo che alcuni corsi possano essere insegnati da un team di professori ma sia possibile che nessuno dei professori di un professore del team insegni alcun corso
Situazione 6 25 6. Supponendo che alcuni corsi possano essere insegnati da un team di professori ma sia possibile che nessuno dei professori di un team insegni alcun corso Creazione della entita Group + Il group serve a rappresentare i team (anche se non insegnano alcun corso) La relazione teaches e ovviamente ancora molti a molti
26 Testo e Domanda Descrivere tramite uno schema ER il linguaggio ER stesso. Il diagramma cioe dovrebbe descrivere un mondo (in un DB) che rappresenti tutti i possibili diagrammi ER dei singoli domini. Una istanza di quel DB dovrebbe consistere di tutti gli schemi ER validi per un certo insieme di Basi di Dati (e applicazioni)