Sistemi Informativi L-A
15 Gennaio 2010 – Compito 1
Tempo a disposizione: 1 ora e 1/2
La soluzione comprende la consegna elettronica dei seguenti file mediante l’apposito applicativo
Web Esamix (http://esamix.labx):
compito1.java
compito1.class
statistiche.txt
querySQL.txt, ris.txt
algebra.doc
teoria.txt
file contenente il sorgente java dell’applicazione
file contenente il bytecode dell’applicazione
file contenente il risultato del punto 1.3) descritto nel seguito
file contenenti query e risultato dell’esercizio 2
file contenente la soluzione dell’esercizio 3
file contenente la risposta dell’esercizio 4
N.B. Per superare la prova è necessario totalizzare 6 punti, di cui almeno 3 punti
nell’esercizio 1, almeno 2 punti negli esercizi 2 e 3 e 1 punto nell’esercizio 4
Esercizio 1 (5 punti)
Scrivere l’applicazione Java compito1 che, caricando l’opportuno driver JDBC, si connette al
database STUDENTI e, facendo uso delle tabelle presenti nello schema esame, ovvero:
VISITA(ID_VISITA CHAR(5) NOT NULL PRIMARY KEY, -- id univoco della visita
URL_SITO VARCHAR(200) NOT NULL,
-- indirizzo Web del sito visitato
INDIRIZZO_IP CHAR(15) NOT NULL,
-- macchina che effettua la visita
BROWSER VARCHAR(20) NOT NULL,
-- nome del browser con cui si visita
TIMESTAMP TIMESTAMP NOT NULL)
-- timestamp visita
1.1) genera nel proprio schema la tabella STATISTICHE con i seguenti campi (e vincoli
opportuni):
URL_SITO VARCHAR(200)
-- indirizzo Web del sito visitato
BROWSER VARCHAR(20)
-- nome del browser con cui si visita
DATA DATE
-- data visita
NUM_VISITE INT
-- numero totale di visite effettuate a quel sito, con quel
browser e in quella data
1.2) popola la tabella STATISTICHE sulla base dei dati presenti nella tabella VISITA (N.B.
l’estrazione della DATA da un TIMESTAMP si ottiene mediante la funzione scalare
“date(Timestamp) → Date”)
1.3) stampa sul file statistiche.txt informazioni relative alla tabella STATISTICHE sulla base della
preferenza espressa dall’utente da standard input. In particolare, per ogni sito Web, la
preferenza può assumere il valore:
• N: non stampa nessuna statistica
• T: stampa tutte le statistiche contenute nella tabella STATISTICHE
• S: stampa l’URL del sito e il numero totale di accessi al sito stesso
N.B. Per la parte di codice standard dell’applicazione si faccia riferimento al file di input
Esame.java. È obbligatorio ridenominare opportunamente il file, e la classe in esso contenuta,
seguendo le specifiche riportate nel testo!
1/2
Sistemi Informativi L-A
15 Gennaio 2010 – Compito 1
Esercizio 2 (2 punti) - SQL interattivo sul database SAMPLE
Si determinino i nomi dei progetti cui hanno partecipato tutti gli impiegati donna
Esercizio 3 (2 punti) - Algebra Relazionale mediante il tool “AlgebraEditor”
Si forniscano ID_VISITA e TIMESTAMP di tutte le visite al sito di URL “www. … .belsito.com”
eseguite con browser “Firefox” oppure “Kmeleon” da una macchina con indirizzo IP
192.xxx.yyy.zzz (ad esempio, 192.168.000.003)
Esercizio 4 (1 punto) - Domanda a risposta aperta
Si descriva brevemente quando uno schema relazionale si dice essere in 1NF e in che cosa consiste
il processo di normalizzazione in 1NF
2/2