2019-2020
Proff. Cappiello, Plebani, Salnitri, Vitali
Concettuale
1. Vi è stata commissionata la progettazione della base di dati del centro stampa PoliPrint.
PoliPrint possiede diverse macchine da stampa, ciascuna identificata da un codice
identificativo univoco per marca, e caratterizzata da modello, dai formati carta supportati, e
dalla velocità di stampa. Quando viene ricevuto un ordine, PoliPrint lo memorizza. In
particolare, ogni ordine è identificato da un codice univoco, dalla data di richiesta, e dalle
operazioni di stampa da eseguire. Ogni operazione è caratterizzata da un numero univoco
per ordine, da una descrizione, dal numero di pagine da stampare, dal costo e dalla macchina
utilizzata. La base di dati deve inoltre tenere traccia di quali ordini sono stati effettuati da
studenti del Politecnico e quali da docenti. Entrambi sono identificati dal proprio codice
persona e caratterizzato da nome e cognome. Per gli studenti è necessario tenere traccia
dell'indirizzo (composto da via, civico, CAP e città) e del recapito telefonico, mentre per i
docenti si registrano il dipartimento di appartenenza e il codice del fondo con cui viene
pagato l'ordine.
NumPag
Codice Costo Descr Num Codice
Modello Data
Formato
MACCHINA (0,n) (1,1) Relativo (1,N)
(1,n) ORDINE
STAMPA
esegue OPERAZIONE a
(1,1)
Velocità
(1,1)
effettua
(0,N)
Cod Persona
Nome
UTENTE Cognome
(t,e)
Telefono Dip
STUDENTE DOCENTE Fondo
Indirizzo
Citta
Via
CAP
Formato
MACCHINA (0,n) (1,1) Relativo (1,N)
(1,n) ORDINE
esegue OPERAZIONE
STAMPA (1,1) a
Velocità
(0,n)
(1,1)
Num Inchiostri (t,o)
Taglierina Codice
Data
effettua
COLORI PLOTTER (0,1) CONSUMA Costo
usa Marca (0,N)
BILE
(0,n)
Data Cod Persona
Nome
UTENTE Cognome
(0,1) CONSUMA mq
usa BILE (t,e)
PLOTTER
Telefono Dip
STUDENTE DOCENTE Fondo
Indirizzo
Citta
Via
CAP
Logico
Dato lo schema E-R in figura, definire il modello logico usando il modello relazionale e specificando
chiavi e vincoli di integrità referenziale.
Si assuma che per ogni riparazione la durata sia espressa in minuti. Si assuma che la superficie
degli hangar sia espressa in mq.
(K) Indica gli attributi che compongono la chiave primaria di una relazione.
a) Trovare gli hangar con una superficie di almeno 750mq, una capacità di massimo 3 aerei e
in cui non sono mai state effettuate riparazioni più lunghe di 1 ora.
SELECT *
FROM Hangar
WHERE Superficie >= 750
AND CapacitaAerei <= 3
AND Codice NOT IN(
SELECT CodiceHangar
FROM Riparazione
WHERE Durata > 60
)
b) Trovare tutte le nazioni delle compagnie aeree che, nel mese di giugno 2020, hanno effettuato
riparazioni per un costo totale di almeno 1,000,000 o che siano durate in totale più di 10 ore.
SELECT *
FROM RiparazioniModello as r1
WHERE r1.CostoTot = (
SELECT MAX(r2.CostoTot)
FROM RiparazioniModello as r2
WHERE r2.Compagnia = r1.Compagnia
);