• Non ci sono risultati.

Compito di Basi di dati - TWM & Informatica 6 CFU 11 settembre 2013

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Basi di dati - TWM & Informatica 6 CFU 11 settembre 2013"

Copied!
2
0
0

Testo completo

(1)

Compito di Basi di dati - TWM & Informatica 6 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 funzioni 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 che non hanno visitato alcuna citt`a svizzera;

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

(d) il turista (i turisti se pi`u di uno) che ha visitato il maggior numero di citt`a francesi;

(e) 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.

1

(2)

• 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).

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 traduca lo schema ER dell’esercizio 3 in uno schema relazionale.

Riferimenti

Documenti correlati

• 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

Sulla base delle conseguenze sui passeggeri coinvolti, gli incidenti vengano classificati in tre categorie principali: (i) incidenti mortali, quando almeno uno dei passeggeri

• (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

• ogni volo sia identificato univocamente da un opportuno codice (ad esempio, il codice FR4984 iden- tifichi il volo Ryanair da Parigi Beauvais a Venezia delle 10:45) e

• ogni volo sia identificato univocamente da un opportuno codice (ad esempio, il codice FR4984 iden- tifichi il volo Ryanair da Parigi Beauvais a Venezia delle 10:45) e