• Non ci sono risultati.

Compito di Basi di dati - Informatica 9 CFU 11 settembre 2013

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Basi di dati - Informatica 9 CFU 11 settembre 2013"

Copied!
2
0
0

Testo completo

(1)

Compito di Basi di dati - Informatica 9 CFU

11 settembre 2013

Esercizio 1:

Sia dato il seguente schema di una base di dati relazionale relativo alle citt`a visitate da un dato in- sieme di turisti:

T urista(Id T urista, N azione, Anno N ascita);

Ha V isitato(T urista, Citt`a, Anno);

Si T rova In(Citt`a, N azione).

Si assuma che ogni turista sia identificato da un Id T urista e sia caratterizzato da una nazione (che ne specifica la nazionalit`a) e dall’anno di nascita. Inoltre, si assuma che, per ogni turista, vengano specificate le citt`a visitate e l’anno della visita (nel caso in cui un turista visiti pi`u volte una stessa citt`a, si terr`a traccia unicamente dell’anno della prima visita). Infine, di ogni citt`a si specifichi la nazione di appartenenza.

Definire preliminarmente le chiavi primarie, le eventuali altre chiavi candidate e, se ve ne sono, le chiavi esterne delle relazioni date. Successivamente, formulare opportune interrogazioni in algebra relazionale che permettano di determinare (senza usare l’operatore di divisione e usando solo se e quando necessario le funzi aggregate):

(a) i turisti che hanno visitato almeno una citt`a polacca prima del 1979 e la loro et`a nell’anno della visita;

(b) i turisti tedeschi che hanno visitato esattamente 2 citt`a italiane;

(c) i turisti che hanno visitato esattamente le stesse citt`a.

Esercizio 2:

Con riferimento all’Esercizio 1, formulare opportune interrogazioni in SQL che permettano di deter- minare quanto richiesto (senza usare l’operatore CONTAINS e usando solo se e quando necessario le funzioni aggregate).

Esercizio 3:

Si voglia modellare il seguente insieme di informazioni riguardanti l’offerta alberghiera di una citt`a.

• Ogni albergo `e identificato univocamente dal suo nome ed `e caratterizzato da una via, un numero civico, un proprietario (che pu`o essere una persona fisica o un’azienda), il numero di camere, il numero di membri del personale in esso operanti e un insieme di servizi offerti (wi-fi, sauna, ..).

• Ogni camera di un dato albergo `e identificata univocamente dal suo numero (ovviamente, camere appartenenti ad alberghi diversi possono avere lo stesso numero) ed caratterizzata dal piano ove si trova, dalla superficie (espressa in metri quadri) e dal numero di letti.

• Ogni membro del personale `e identificato univocamente dal suo codice fiscale ed `e caratterizzato da un nome, un cognome, la mansione, un recapito telefonico e l’insieme di alberghi per cui lavora (un membro del personale, ad esempio un addetto alla pulizia delle camere, pu`o lavorare per pi`u alberghi).

1

(2)

Si definisca uno schema Entit`a-Relazioni che descriva il contenuto informativo del sistema, illustrando con chiarezza le eventuali assunzioni fatte. Lo schema dovr`a essere completato con attributi ragionevoli per ciascuna entit`a (identificando le possibili chiavi) e relazione. Vanno specificati accuratamente i vincoli di cardinalit`a e partecipazione di ciascuna relazione. Si definiscano anche eventuali regole di derivazione e/o vincoli di integrit`a necessari per codificare alcuni dei requisiti attesi del sistema.

Esercizio 4:

Si discutano brevemente le differenze tra 2PL e TS. Successivamente, si stabilisca se i seguenti sched- ule appartengono o meno a 2PL, TS e 2PL stretto:

(s1) r1(t), w4(t), r3(z), w1(z), r3(x), w1(y), r2(x), w2(x), r4(y), w5(x), r5(y), w5(t);

(s2) r1(t), r3(x), r4(t), r4(x), w2(x), r3(t), w4(t), w4(z), r1(y), w3(z), w2(y), w1(z);

(s3) r1(t), r4(x), r2(t), w2(t), r3(t), w1(t), r3(z), w1(z), r3(t), w1(x), r5(x), w5(t), r5(z).

Esercizio 5:

Dato il seguente insieme di chiavi:

6, 1, 18, 8, 17, 10, 15, 2, 11, 4, 12,

mostrare il B-albero di ordine 4 ottenuto inserendo un elemento dopo l’altro nell’ordine dato (riportando la sequenza di alberi generata dal processo di inserimento).

(Facoltativo) Mostrare il B-albero di ordine 4 ottenuto a partire da quello prodotto dalla precedente sequenza di inserimenti rimuovendo, nell’ordine dato, gli elementi 8, 4.

Riferimenti

Documenti correlati

• ogni paziente sia identificato univocamente dal codice fiscale, sia caratterizzato da un nome, un cognome e un anno di nascita, e si trovi in un letto di un dato reparto;.. •

• Ogni medico, primari compresi, sia identificato univocamente dal codice fiscale e sia caratterizzato da un nome, un cognome, dall’anno di nascita e da una o pi` u specializzazioni.

• Ogni collegamento giornaliero offerto da una determinata compagnia di navigazione sia identificato univocamente da un numero progressivo (ad esempio, il collegamento numero 3

• Ogni citt` a sul lago sia identificata univocamente dal nome e sia caratterizzata dal numero di abitanti, dalla provincia e dalla regione di appartenenza e dal numero di compagnie

Di ogni persona coinvolta in almeno un incidente vengano memorizzati il codice fiscale, o documento equivalente nel caso di stranieri, che lo identifica univocamente, il nome,

• (i) ogni gara sia identificata univocamente dal suo nome (ad esempio, non vi possano essere due gare di salto in alto femminile), (ii) gare diverse possano avere lo stesso orario

• Per ogni specifica istanza di tratta, la data in cui avr` a luogo (ad esempio, la tratta Trieste-Monaco del 25 febbraio 2012), l’aeroplano utilizzato (si assuma che su una

La banca memorizzata nome, cognome e recapito telefonico di ogni suo dipendente, pi` u il nome dell’eventuale supervisore (un altro dipendente della banca).. Un impiegato pu` o