• Non ci sono risultati.

Compito di Basi di Dati 20 marzo 2006

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Basi di Dati 20 marzo 2006"

Copied!
2
0
0

Testo completo

(1)

Compito di Basi di Dati

20 marzo 2006

Esercizio 1:

Si vuole progettare una base di dati di supporto alla gestione di una rete di cinema multisala di propriet`a di un’unica societ`a.

La societ`a possiede pi`u cinema, in diverse citt`a italiane. Ogni cinema `e identificato univocamente da un codice ed `e caratterizzato da un nome, da un manager, da un recapito telefonico e dalla citt`a in cui si trova. Ogni sala di un cinema `e contraddistinta da un numero (sala numero 1, sala numero 2, ...) e possiede una superficie, espressa in metri quadrati, e una capienza (150 posti, 200 posti, ..).

Oltre ai manager dei vari cinema, la societ`a dispone di altro personale (addetti alla proiezione, addetti alla biglietteria, addetti alle pulizie, ..), che pu`o lavorare presso pi`u cinema (non necessariamente tutti).

Ogni film `e identificato da un codice. Di ogni film vengono registrati il titolo, il nome del regista, l’anno di produzione e la nazione in cui `e stato prodotto (si assuma che non vi siano co-produzioni internazionali) e la lunghezza in minuti.

Si vuole, inoltre, tener traccia delle proiezioni dei vari film nei vari cinema. Di ogni proiezione vogliamo memorizzare la sala, il giorno, l’orario e il prezzo (si assuma che proiezioni diverse dello stesso film o di film diversi possano avere prezzi diversi).

Si vuole anche tener traccia di alcune informazioni relative alle principali star cinematografiche. Di ognuna vengono memorizzati il nome (che le identifica univocamente), l’anno di nascita, il sesso e la nazionalit`a.

Infine, si registrano informazioni sul cast di ogni film, che riportano le star che vi partecipano e il loro ruolo (attrice protagonista, attore non protagonista, comparsa, ..).

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 indichino anche le eventuali regole aziendali (regole di derivazione e vincoli di integrit`a).

Esercizio 2:

Sia dato il seguente schema relazionale, relativo alle gare internazionali di sci di fondo dell’anno 2003, comprendente le relazioni:

Atleta(N ome, N azione, GruppoSportivo, Et`a);

Gara(N ome, Citt`a, N azione, N umeroOrdine, Lunghezza);

Risultati(Gara, Atleta, P osizione).

Definire preliminarmente chiavi primarie, chiavi candidate e eventuali chiavi esterne delle relazioni date, tenendo conto delle seguenti condizioni. Ogni atleta sia identificato univocamente dal suo nome. Alcune nazioni siano rappresentate da pi`u atleti. Atleti di nazioni diverse possano appartenere al medesimo

i

(2)

gruppo sportivo. Ogni gara sia identificata univocamente dal suo nome. In ogni citt`a sia stata disputata una sola gara; in alcune nazioni si siano svolte pi`u gare (in citt`a diverse). Ogni gara sia contraddistinta da un numero d’ordine (1 indica la prima gara del calendario delle gare, 2 la seconda e cos`ı via). Vi possano essere gare diverse aventi la stessa lunghezza. La posizione finale di un atleta in una certa gara venga indicata da un valore numerico associato all’attributo Posizione (1 identifica l’atleta primo classificato, 2 il secondo classificato, e cos`ı via). Quando un atleta che ha partecipato ad una determinata gara si `e ritirato, all’attributo posizione risulta assegnato il valore NULL.

Formulare opportune interrogazioni in SQL che permettano di determinare (usando solo se necessario le funzioni aggregate):

(a) per ogni atleta, le gare che si sono svolte nella sua nazione;

(b) gli atleti che hanno partecipato ad almeno due gare svoltesi nella loro nazione (giungendo al traguardo);

(c) i gruppi sportivi con atleti di un’unica nazione.

Riferimenti

Documenti correlati

Ogni cliente sia identificato univocamente dalla sua email e caratterizzato da un nome, un indirizzo e un recapito telefonico. Ogni acquisto da parte di un cliente sia visualizzato

(Si assuma che non vi siano caselli appartenenti a pi` u autostrade.) Si tenga traccia della distanza che intercorre tra coppie di caselli consecutivi (ad esempio, tra il casello

Infine, si determini la dimensione e il numero di accessi a blocco richiesti da una ricerca basata su un B-albero, con campo di ricerca il campo chiave V 2, puntatore ai dati

Si determini il numero di accessi a blocco richiesti da una ricerca basata su un indice secondario costruito su un campo chiave non ordinante V 2 di dimensione pari a 9

Di ogni membro del personale si voglia sapere, per ogni albergo presso cui lavora, il numero di ore settimanali di lavoro presso tale albergo.. (a) Determinare le dipendenze

Infine, si determini la dimensione e il numero di accessi a blocco richiesti da una ricerca basata su un B + -albero, con campo di ricerca il campo chiave V 2, puntatore ai

In dettaglio, il sistema verifica la consistenza dei dati relativi allo studente (nome e cognome, numero di matricola) consultando l’archivio Studenti; inoltre, si accerta che

(a) tutte le citt`a tedesche direttamente raggiungibili da Amsterdam (una citt`a x `e direttamente raggiun- gibile da una citt`a y se esiste un volo di una qualche compagnia da y