Prima prova scritta parziale del 19/02/2007 – Basi di - INFN

Consento la pubblicazione su internet dei
risultati
Università degli Studi di Ferrara
Firma: ____________________________
Corso di Laurea in Informatica
Prima prova scritta parziale del 19/02/2007 – Basi di Dati
Corso di Laurea in Informatica e comunanze
Esercizio 1
La redazione della trasmissione “Il grande fratello” vuole realizzare un sistema informativo per la
memorizzazione di tutti i dati e gli eventi relativi alla permanenza dei concorrenti nella casa.
Si vogliono mantenere le informazioni personali relative ai concorrenti (nome, cognome, data di nascita,
segno zodiacale, città di provenienza, foto, professione, hobby, motivazioni) e quelle relative alla loro
permanenza (data di ingresso, eventuale data di uscita). Inoltre si vogliono memorizzare le news giornaliere,
caratterizzate da data, ora, un titolo e una breve descrizione. Devono essere modellate anche le attività
settimanali: ogni settimana i concorrenti hanno a disposizione un budget che è costituito da un ammontare
iniziale più o meno la percentuale scommessa durante la prova settimanale (nome, descrizione) che può
avere esito positivo o negativo e determina la scelta di uno o più concorrenti migliori e peggiori. Per i
migliori di ogni settimana si devono registrare le scelte relative ai premi (costo e tipo di premio scelto).
Infine le nomination: ogni settimana (oppure ogni 2) vengono fatte le nomination: ciascun concorrente
nomina due suoi compagni, i concorrenti (2 o più) che hanno avuto il maggior numero di voti sono candidati
all’eliminazione stabilita in base ai voti (memorizzati in percentuale) dei telespettatori.
(a)
(b)
(c)
Considerando le specifiche sopra riportate, si definisca il relativo schema E/R (specificando le entità,
le associazioni e gli attributi di maggiore rilievo) evidenziando eventuali vincoli inespressi e dati
derivati;
Indicare il rapporto di cardinalità di ciascuna associazione nella notazione 1:1, 1:N, N:M;
Esprimere esplicitamente i vincoli di partecipazione, utilizzando la notazione (min, max), per ciascuna
associazione, motivando le scelte e giustificando eventuali ulteriori vincoli assunti.
[FACOLTATIVO: Supponendo di adottare il diagramma sviluppato al punto (a) per un’implementazione nel
modello relazionale, quante e quali relazioni (tabelle) saranno necessarie?]
Cognome e Nome ______________________________________ Matricola _________________
Esercizio 2
Dato il seguente schema relazionale:
ARTISTA(IDArtista, NomeArtista, Localita, Regione, Sesso)
CANZONE(IDCanzone, NomeCanzone, Durata, Anno, Vendite)
SCRIVE(IDArtista, IDCanzone)
(a) Specificare le chiavi esterne per questo schema, enunciando esplicitamente le assunzioni fatte;
(b) indicare tutte le possibili superchiavi per la relazione CANZONE;
(c) esprimere un’operazione di inserimento di una nuova canzone (non ancora presente nel database) scritta
da un artista già presente nel database;
(d) fornire un esempio di operazione di aggiornamento delle relazioni che violi un vincolo di integrità
referenziale.
Cognome e Nome ______________________________________ Matricola _________________
Esercizio 3
Considerando lo schema relazionale dell’esercizio 2, riportato di seguito:
ARTISTA(IDArtista, NomeArtista, Localita, Regione, Sesso)
CANZONE(IDCanzone, NomeCanzone, Durata, Anno, Vendite)
SCRIVE(IDArtista, IDCanzone)
esprimere le seguenti interrogazioni in algebra relazionale:
(a)
(b)
(c)
(d)
(e)
elenco delle canzoni (IDCanzone, NomeCanzone) che sono state scritte nel 2006 e che hanno una
durata maggiore di 5 minuti;
elenco di tutte le canzoni (IDCanzone, NomeCanzone, Anno) scritte dall’artista “Vasco Rossi” nel
2004;
elenco degli artisti (IDArtista, NomeArtista) che hanno scritto almeno una canzone che ha avuto un
volume di vendite superiore a 200;
elenco che indichi, per ogni artista, il numero di canzoni scritte per ciascun anno (IDArtista, Anno,
NumeroCanzoni);
elenco delle canzoni scritte da un solo artista (IDCanzone, NomeCanzone).
Cognome e Nome ______________________________________ Matricola _________________
Esercizio 4
Si considerino le relazioni R e S:
R
A
1
2
3
B
x
y
z
C
9
8
7
S
D
x
x
z
E
1
3
3
F
3
2
1
Mostrare i risultati delle seguenti operazioni di algebra relazionale:
(a)
(b)
(c)
(d)
(e)
(f)
R |><|R.A=S.E S;
R |><|R.A=S.F S;
R =|><|R.B=S.D S; (left outer join)
R |><|R.A=S.D S;
R |><|=R.A=S.D S; (right outer join)
R∪S
Cognome e Nome ______________________________________ Matricola _________________