• Non ci sono risultati.

Compito di Basi di Dati e Sistemi Informativi 10 settembre 2007

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Basi di Dati e Sistemi Informativi 10 settembre 2007"

Copied!
2
0
0

Testo completo

(1)

Compito di Basi di Dati e Sistemi Informativi

10 settembre 2007

Esercizio 1:

Sia dato il seguente schema relazionale:

dipartimento(nomeDip, managerCF, azienda);

azienda(nome, citt`a);

consulente(codF iscale, qualif ica, citt`a);

segue(consulente, dipartimento, azienda, compensoM ensile);

in(citt`a, stato),

che descrive attivit`a di consulenza aziendale.

Si assuma che:

• ogni azienda sia identificata univocamente dal nome e abbia sede in un’unica citt`a (ovviamente aziende diverse possono avere la loro sede nella stessa citt`a);

• nell’ambito di ciascuna azienda, ogni dipartimento sia caratterizzato da un nome, che lo identifica univocamente, e dal manager;

• ogni consulente sia caratterizzato dal codice fiscale, che lo identifica univocamente, dalla qualifica e dalla citt`a di residenza;

• ogni consulente possa seguire pi`u dipartimenti di una stessa azienda o di aziende diverse e ogni dipartimento di una data azienda possa possedere zero, uno o pi`u consulenti;

• per ogni consulenza sia definito un compenso mensile;

• ogni citt`a sia identificata univocamente dal suo nome, ossia che non possano esistere citt`a con lo stesso nome n´e nello stesso stato n´e in stati diversi.

Definire preliminarmente le chiavi primarie e le eventuali chiavi esterne delle relazioni date. Successiva- mente, 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 dipartimenti seguiti da almeno un consulente che ha la sua residenza nello stato in cui ha sede l’azienda cui appartiene il dipartimento;

(b) le citt`a in cui ha sede un’azienda, ma non risiede alcun consulente, o risiede un consulente, ma non ha sede alcuna azienda;

(c) i dipartimenti che non hanno consulenti in comune;

(d) i dipartimenti che sono seguiti solo da consulenti che risiedono in Italia;

(e) le coppie di consulenti (x, y) tali che esiste almeno un’azienda di cui x `e consulente e y no, e viceversa (x si dice consulente di un’azienda se `e consulente di almeno uno dei suoi dipartimenti).

1

(2)

Esercizio 2:

Con riferimento all’Esercizio 1, formulare opportune interrogazioni in SQL che permettano di determinare quanto richiesto (usando solo se necessario le funzioni aggregate).

Esercizio 3:

Si vuole progettare una base di dati relativa ad una rete bancaria informatizzata. La rete bancaria

`

e costituita da un consorzio di banche che condividono un insieme di sportelli automatizzati (sportelli Bancomat).

Ogni banca `e individuata da un codice, ha un proprio nome, un insieme di filiali ed un insieme di impiegati.

Di ogni impiegato vogliamo conoscere il nome, l’indirizzo dell’abitazione e la data di assunzione. Nel corso della vita lavorativa, un impiegato pu`o prestare servizio in diverse filiali della stessa banca, rispettando il vincolo di una permanenza minima di un mese in una filiale. Ogni filiale `e caratterizzata da un codice e possiede un indirizzo, dei propri conti, delle postazioni di cassa e degli sportelli automatizzati; pu`o, inoltre, rilasciare delle carte Bancomat. Ogni conto `e relativo ad uno o pi`u clienti ed `e caratterizzato da una data di apertura, da un’eventuale data di estinzione e (se ancora aperto) da un ammontare totale.

Ogni carta Bancomat `e identificata univocamente dalla password ed `e contraddistinta da un limite di spese giornaliero e da un limite di spesa mensile (tali limiti possono variare da una carta all’altra).

Ogni cliente ha un nome, un indirizzo e un numero di codice fiscale che lo identifica univocamente. Un cliente pu`o possedere una o pi`u carte Bancomat, ognuna associata ad uno dei suoi conti. Un cliente della banca pu`o anche essere un impiegato della stessa. In tal caso, non ha alcun costo di gestione per le operazioni eseguite presso le filiali della banca stessa o presso gli sportelli automatizzati del consorzio a cui la banca appartiene. Ogni cassa o sportello automatizzato ha una certa quantit`a di denaro disponibile, che viene aggiornata in caso di depositi/prelievi. Ovviamente non `e possibile effettuare prelievi superiori al denaro disponibile. Sia presso le casse sia presso gli sportelli automatizzati `e possibile eseguire operazioni bancarie, le quali avvengono in una certa data ad una certa ora e sono relative ad un dato conto. Attraverso uno sportello automatizzato `e possibile effettuare operazioni di deposito, saldo, lista movimenti e prelievo.

Alle operazioni di prelievo ogni banca associa due diversi costi: uno per le operazioni di prelievo eseguite presso stazioni automatizzate di banche appartenenti al consorzio e un altro per operazioni eseguite presso stazioni automatizzate di altre banche.

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 all’Esercizio 1, si forniscano un comando SQL per la creazione delle tabelle DIPARTI- MENTO e SEGUE (si facciano delle assunzioni ragionevoli per quanto riguarda la definizione dei domini, l’inserimento di eventuali valori di default, l’imposizione di eventuali vincoli NOT NULL e UNIQUE e cos`ı via). Successivamente, si fornisca un comando SQL che incrementi del 30% il compenso di tutti i consulenti dell’azienda Guerrini. Infine, si crei una vista che riporti per ogni impiegato il compenso mensile complessivo percepito per ogni azienda da lui seguita (un impiegato segue un’azienda se segue almeno uno dei suoi dipartimenti).

Riferimenti

Documenti correlati

Si assuma che il traffico stradale di ciascuna provincia sia sotto la responsabilit`a di uno specifico corpo di polizia stradale provinciale, anche se membri del corpo di polizia di

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

Infine, si tenga presente che uno stesso cliente pu`o effettuare pi` u prenotazioni dello stesso tipo di camere presso lo stesso albergo in periodi diversi (ad esempio, il cliente