• Non ci sono risultati.

Compito di Basi di Dati e Sistemi Informativi 27 luglio 2007

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Basi di Dati e Sistemi Informativi 27 luglio 2007"

Copied!
2
0
0

Testo completo

(1)

Compito di Basi di Dati e Sistemi Informativi

27 luglio 2007

Esercizio 1:

Sia dato il seguente schema relazionale:

ricercatore(RicID, nome, cognome, universit`a);

universit`a(nome, citt`a);

convegno(nome, citt`a, anno, edizione, responsabile);

partecipa(ricercatore, convegno, anno);

in(citt`a, stato),

che descrive la partecipazione dei ricercatori ai convegni internazionali.

Si assuma che ogni ricercatore sia contraddistinto da un identificatore che lo caratterizza univocamente (RicID ), che ogni universit`a sia identificata univocamente dal suo nome, che la base di dati non possa contenere citt`a diverse con lo stesso nome, che non esistano convegni diversi con lo stesso nome e che di ogni convegno venga tenuta una e una sola edizione ogni anno. Si assuma, inoltre, che per ogni edizione di un dato convegno esista un ricercatore che ne `e responsabile (definisce il programma del convegno, seleziona i partecipanti, ..), che un ricercatore possa partecipare ogni anno a pi`u convegni e che ogni edizione di un dato convegno veda la partecipazione di pi`u ricercatori.

Definire preliminarmente le chiavi primarie e le eventuali chiavi esterne delle relazioni date. Successiva- mente, stabilire quali delle seguenti interrogazioni si possono esprimere in algebra relazionale. In tutti i casi in cui risulta possibile, formulare opportune interrogazioni in algebra relazionale che permettano di determinare (senza usare l’operatore di divisione e usando solo se necessario le funzioni aggregate):

(a) i ricercatori che non si sono mai incontrati ad un convegno;

(b) i ricercatori che nel 2005 o non hanno partecipato ad alcun convegno o hanno partecipato esattamente ad un convegno o hanno partecipato esattamente a due convegni;

(c) lo stato (gli stati se pi`u d’uno) in cui nel 2004 si `e tenuto il maggior numero di convegni;

(d) i convegni ai quali nel 2006 ha partecipato Franco Rossi, ma non Piero Verdi, o ha partecipato Piero Verdi, ma non Franco Rossi (si assuma che vi sia un solo ricercatore che si chiama Franco Rossi e che vi sia un solo ricercatore che si chiama Piero Verdi);

(e) i ricercatori che nel 2003 hanno partecipato ad un soprainsieme proprio dei convegni cui ha partecipato Franco Rossi.

Esercizio 2:

Con riferimento all’Esercizio 1, stabilire quali interrogazioni si possono esprimere nel linguaggio SQL (si faccia riferimento allo standard SQL-92). In tutti i casi in cui risulta possibile, formulare oppor- tune interrogazioni in SQL che permettano di determinare quanto richiesto (usando solo se necessario le funzioni aggregate).

1

(2)

Esercizio 3:

Si vuole progettare una base di dati contenente informazioni su componenti di arredamento, da utilizzare per effettuare proposte di arredo a clienti di uno studio di architettura.

Ogni componente di arredo (ad esempio, tavolo, sedia, ..) `e caratterizzata da un codice identificativo, da un nome, da una breve descrizione, dalla data in cui `e iniziata la sua produzione e dalle dimensioni.

Per ogni componente, vogliamo mantenere informazioni sui colori in cui `e disponibile e sui materiali (ad esempio, legno, laminato plastico, ..). Ogni componente pu`o essere disponibile in pi`u colori e in pi`u materiali.

Per ogni componente, vogliamo inoltre mantenere informazioni sull’azienda produttrice. In particolare, per ogni azienda, vogliamo mantenere il nome, l’indirizzo, il numero di telefono e di fax, e il nome e cognome della persona di riferimento. Ogni componente pu`o essere prodotta da pi`u aziende e un’azienda pu`o produrre pi`u componenti utilizzate dallo studio di architettura.

Nella base di dati, vogliamo, inoltre, mantenere informazioni sui progetti di arredo che lo studio realizza.

Per ogni progetto, vogliamo memorizzare informazioni sul cliente per cui il progetto `e stato realizzato (nome, cognome, codice fiscale e indirizzo), sulla data in cui il progetto `e stato realizzato e sull’architetto che ha realizzato il progetto (nome, cognome e recapito). Un cliente pu`o avere pi`u progetti a lui associati.

Per semplicit`a, assumiamo, invece, che ogni progetto sia realizzato da un solo architetto.

Ogni progetto si compone di un insieme di progetti d’ambiente associati ai diversi ambienti. Per ogni ambiente, vogliamo mantenere il nome (cucina, soggiorno, ..), le dimensioni (lunghezza, larghezza e altezza), il colore del pavimento e il colore delle pareti. Vogliamo, inoltre, mantenere informazioni sulle componenti di arredo che il progetto prevede di collocare in ogni ambiente, con l’indicazione del colore, del materiale scelto e della ditta fornitrice.

Si definisca uno schema Entit`a-Relazioni (ER) che descriva il contenuto informativo del sistema, illus- trando 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 accurata- mente i vincoli di cardinalit`a e partecipazione di ciascuna relazione. Si indichino anche le eventuali regole di derivazione e gli eventuali vincoli di integrit`a non esprimibili nel modello ER.

Esercizio 4:

Con riferimento alle operazioni di aggiornamento di una base di dati (inserimento, modifica, cancel- lazione), si spieghi quali vincoli di integrit`a ciascuna operazione pu`o violare. Successivamente, vengano descritte le azioni che possono essere intraprese qualora un aggiornamento dia luogo ad una violazione.

Riferimenti

Documenti correlati

Ogni edizione di un corso sia caratterizzata dal codice del corso, dall’anno accademico (si assuma che di ogni corso venga tenuta al pi` u un’edizione per anno accademico), dal

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

Si assuma che un artista possa tenere pi` u di un concerto nella stessa citt`a nello stesso mese di uno stesso anno, ma non lo stesso giorno.. Si assuma, infine, che nella base di

(e) per ogni posizione, il numero di parcheggi presenti, il numero totale di posti disponibili e l’ammontare complessivo degli stipendi pagati per gli addetti alla sicurezza.

(d) le regioni tali che l’insieme delle citt`a in cui almeno un agente ha il suo ufficio sia un sovrainsieme proprio dell’insieme delle citt`a in cui risiede almeno un

Si assuma che per una stessa occasione possono essere offerti pi` u men` u, ma che un men` u possa essere offerto in un’unica occasione (un men` u natalizio non pu` o essere anche

Si assuma che ogni ricercatore sia contraddistinto da un identificatore che lo caratterizza univocamente (RicID), che ogni universit`a sia identificata univocamente dal suo nome, che