Sei sulla pagina 1di 1

UNIVERSITÀ DEGLI STUDI DI PALERMO CORSO DI LAUREA IN INGEGNERIA INFORMATICA

BASI DI DATI 6 CFU – A.A. 2017- 2018 - PROF. ROSARIO SORBELLO – 3 – APPELLO LAUREANDI

PARTE 1 – PROGETTAZIONE ENTITA’ – RELAZIONE (MAX 6 PUNTI)


SI REDIGA LO SCHEMA ENTITÀ-RELAZIONE, LA SUA RISTRUTTURAZIONE LA TRADUZIONE NEL MODELLO RELAZIONE DEL SEGUENTE
PROGETTO PER GESTIRE UN NEGOZIO PER IL NOLEGGIO DI FILM:
UN NEGOZIO NOLEGGIA FILM IN VIDEOCASSETTE VHS. IL NEGOZIO DISPONE DI UN CATALOGO DEI FILM, OVE CIASCUN FILM È
IDENTIFICATO DAL CODICE VHS; NEL CATALOGO SONO INOLTRE SPECIFICATI IL TITOLO DEL FILM, IL REGISTA, GLI ATTORI PRINCIPALI,
LA LORO NAZIONALITÀ ED IL PERSONAGGIO INTERPRETATO NEL FILM, L’ANNO DI PRODUZIONE; CIASCUN FILM È INDICIZZATO DA UN
INSIEME DI TERMINI (UNA LISTA DI PAROLE CHE DESCRIVONO SINTETICAMENTE IL CONTENUTO DEL FILM). I FILM POSSONO ESSERE
ANCHE IN LINGUA ORIGINALE (DIVERSA DALL’ITALIANO); IN TAL CASO NEL CATALOGO È DETTO DI CHE LINGUA SI TRATTA, E SE IL
FILM È SOTTOTITOLATO. DI OGNI FILM PRESENTE NEL CATALOGO IL NEGOZIO DISPONE DI UNA O PIÙ VIDEOCASSETTE, CIASCUNA
IDENTIFICATA DALLA SUA COLLOCAZIONE; SE UNA CASSETTA È NOLEGGIATA, INTERESSA SAPERE IL CLIENTE CHE L’HA NOLEGGIATA E
LA DATA DEL NOLEGGIO. I CLIENTI SONO IDENTIFICATI DA UN CODICE; DI ESSI INTERESSA INOLTRE COGNOME, NOME, INDIRIZZO,
TELEFONO.
PARTE 2 – INTERROGAZIONI IN SQL (MAX 8 PUNTI)
1. IMPIEGATO (COD_IMP, NOME, ANNONASCITA, SESSO, STIPENDIO)
2. ALLOCAZIONE (REF_IMP, REF_PROG)
3. PROGETTO (COD_PROG, DATAINIZIO, DATAFINE, BUDGET)

Con vincolo di integrità referenziale tra:


• REF_IMP DI ALLOCAZIONE E COD_IMP DI IMPIEGATO
• REF_PROG DI ALLOCAZIONE E COD_PROG DI PROGETTO

Disegnare lo schema Master-Slave dello Schema di Relazione, e Scrivere in SQL le seguenti interrogazioni:
1. Per ciascun progetto con almeno 5 impiegati allocati di sesso femminile, l’identificatore e la data di inizio del progetto, il numero
totale di impiegati allocati (indipendentemente dal sesso) ed il loro stipendio medio.
2. Per ciascun impiegato allocato su almeno 3 progetti con budget superiore a 10000 eur, identificatore e no dell’impiegato, il numero di
progetti su cui è allocato (indipendentemente dal budget), ed il budget medio di tali progetti.
3. Gli identificatori Cod_Imp1 e Cod_Imp2 per ogni coppia di impiegati tali che il 1° impiegato sia nato (strettamente) prima del 2°
impiegato, ed inoltre su ogni progetto su cui è allocato il 1° impiegato sia allocato anche il 2° impiegato.
4. Gli identificatori Cod_Prog1 e Cod_Prog2 per ogni coppia di progetti tali che il budget del 1° progetto sia strettamente maggiore di
quello del 2° progetto e ogni impiegato allocato sul 1° progetto sia allocato anche sul 2° progetto.

PARTE 3: INTERROGAZIONI IN ALGEBRA RELAZIONALE (MAX 8 PUNTI)


SFILATA (COD_SF, NOME, ANNO_SFILATA, CITTA’, SOCIETA’_ORGANIZZATRICE)
PRESENTATO (REF_SFIL, REF_VEST, GIORNO_SETTIMANA, STAGIONE)
VESTITO (COD_VS, NOME_STILISTA, COGNOME_STILISTA, NAZIONALITA_STILISTA, ANNO_CREAZIONE)
Con vincolo di integrità referenziale tra:
• REF_SFIL DI PRESENTATO E COD_SF DI SFILATA
• REF_VEST DI PRESENTATO E COD_VS DI VESTITO

INTERROGAZIONI IN ALGEBRA RELAZIONALE


1. Selezionare il giorno della settimana nel quale è stato presentato, nell’anno 2017, un vestito di Miuccia Prada.
2. Selezionare tutte le informazioni dei vestiti di Giorgio Armani creati nel 2013 che non sono mai stati presentati
nel 2014 e nel 2015.
3. Selezionare tutte le informazioni delle sfilate nelle quali è stato presentato un vestito di Paul Smith nel 2012 o nel
2013.
4. Selezionare il nome della sfilata nella quale sono stati presentati tutti i vestiti di Enrico Coveri.
PARTE 5: DOMANDE DI TEORIA (MAX 14 PUNTI)

A) SCRIVERE LA DEFINIZIONE MATEMATICA ESTESA E COMPATTA DEL JOIN NATURALE. A COSA È UGUALE IL GRADO
DELLA RELAZIONE OTTENUTA CON IL JOIN NATURALE RISPETTO AI GRADI DEI DUE OPERANDI?
B) SCRIVERE LO SCHEMA SINTATTICO DI ALTER DOMAIN E ALTER TABLE E SPIEGARE IL SIGNIFICATO DELLE VARIE PARTI.
C) SPIEGARE IN DETTAGLIO ANCHE CON I RISPETTIVI SCHEMI SINTATTICI IL SIGNIFICATO DI TIMESTAMP, INTERVAL,
BIGINT, BLOB IN SQL.
D) SCRIVERE L’ESPLOSIONE IN ALGEBRA RELAZIONE DEL THETA-JOIN TRA LE RELAZIONI R1 E R2. DIMOSTRARE QUANDO
IL JOIN TRA DUE RELAZIONI R1(X1) E R2(X2) È PARI ALL’INTERSEZIONE DI R1(X1) CON R2(X1).
E) PER LE VIOLAZIONI PRODOTTE DALL’AGGIORNAMENTO DI UN ELEMENTO DALLA TABELLA MASTER, QUALI SONO LE
DIFFERENZE TRA CASCADE, SET NULL E SET DEFAULT.
F) QUALI SONO LE DIFFERENZE TRA ROLLBACK PARZIALE E ROLLBACK TOTALE NELL’AMBITO DELLA DEFINIZIONE DI UNA
ASSERZIONE. SCRIVERE ANCHE LO SCHEMA SINTATTICA DI UNA ASSERZIONE.
G) SPIEGARE COSA SIA LA PROTOTIPIZZAZIONE ALL’INTERNO DEL CICLO DI VITA DI UN SISTEMA INFORMATICO.