• Non ci sono risultati.

Compito di Basi di dati - Informatica 9 CFU 18 febbraio 2013

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Basi di dati - Informatica 9 CFU 18 febbraio 2013"

Copied!
2
0
0

Testo completo

(1)

Compito di Basi di dati - Informatica 9 CFU

18 febbraio 2013

Esercizio 1:

Sia dato il seguente schema relazionale di una base di dati contenente informazioni relative ad un in- sieme di club italiani di atletica leggera, limitatamente agli atleti del settore lanci (lancio del peso, lancio del disco, ..):

club(nome, citt`a, presidente);

atleta(codiceFiscale, club, disciplina, recordPersonale);

disciplina(nome, recordItaliano);

gareggia(atleta,gara,posizione,misura);

Si assuma che:

• ogni club sia identificato univocamente dal nome, abbia sede in una citt`a e abbia un unico presidente;

• club diversi possano avere sede nella medesima citt`a;

• la stessa persona possa essere presidente di due o pi`u club;

• ogni atleta sia identificato univocamente dal suo codice fiscale, sia membro di un unico club e gareggi in un’unica disciplina;

• ogni disciplina sia identificata univocamente dal nome;

• ogni gara sia identificata univocamente dal nome.

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):

(a) gli atleti del club Fiamme Azzurre o di un club che ha la sede nella stessa citt`a in cui ha la sede il club Fiamme Azzurre;

(b) gli atleti che praticano una disciplina diversa da quelle praticate da tutti gli altri atleti del club cui appartengono;

(c) per ogni club con almeno 15 atleti, il numero di atleti che hanno vinto almeno una gara.

Esercizio 2:

Con riferimento all’Esercizio 1, formulare opportune interrogazioni in SQL che permettano di determinare quanto richiesto (senza usare l’operatore CONTAINS).

Esercizio 3:

Si voglia modellare il seguente insieme di informazioni riguardanti i pazienti ricoverati in un dato os- pedale italiano.

• Ogni reparto sia identificato univocamente dal nome, occupi uno e un solo piano di un determinato edificio e abbia un unico primario e uno o pi`u altri medici. Si tenga traccia del numero di camere, del numero di letti disponibili e del numero di letti occupati di ogni reparto.

1

(2)

• 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. Si assuma che ogni medico, primari compresi, possa lavorare per un solo reparto.

• Ogni camera di un dato reparto sia identificata da un numero (camera 5 del reparto Oculistica) e sia caratterizzata dal numero di letti disponibili e dal numero di letti occupati.

• Ogni letto di un dato reparto sia identificato da un numero (letto 21 del reparto Ginecologia) e sia caratterizzato dalla camera ove correntemente si trova. Si assuma che un letto possa essere nel tempo spostato da una camera ad un’altra di uno stesso reparto, ma non possa cambiare reparto.

• Ogni paziente sia identificato univocamente dal codice fiscale e sia caratterizzato dal nome, dal cognome, dall’anno di nascita e dal letto occupato. Si tenga presente che fra i pazienti vi possono essere anche medici dell’ospedale, primari compresi.

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 aziendali (regole di derivazione e vincoli di integrit`a) necessarie per codificare alcuni dei requisiti attesi del sistema.

Esercizio 4:

Si stabilisca se i seguenti schedule appartengono o meno a VSR, CSR, 2PL, 2PL stretto e TS.

s1: w1(x), w1(z), r2(x), r0(z), w2(x), r2(z), r3(x), w0(z);

s2: r2(x), w1(y), w3(x), r2(y), r2(v), w3(y), r4(x), w4(v), w5(y), r5(v).

Esercizio 5:

Discutere brevemente le differenze tra B+-alberi e B-alberi.

Successivamente, dato il seguente insieme di chiavi:

4, 17, 9, 10, 6, 16, 2, 11, 8, 12, 3, 14

mostrare il B+-albero, con ordine dei nodi interni p = 3 e ordine dei nodi foglia pleaf = 2, ottenuto inserendo un elemento dopo l’altro nell’ordine dato (riportando la sequenza di alberi generata dal processo di inserimento).

Infine, si illustrino i passi eseguiti rispettivamente nella ricerca di: (i) il record contraddistinto dal valore 11 (point query) e (ii) i record con valori compresi nell’intervallo 8-16 (range query).

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

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

• 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 modello sia identificato univocamente dal nome (si assuma, in particolare, che modelli sviluppati da produttori diversi non possano avere lo stesso nome) e sia caratterizzato