Turno M-Z
14 Aprile 2011
1
Nel corso di queste esercitazioni verrà impiegata l’utility “sqlite3”, che permette
di accedere alle basi di dati create con SQLite tramite il linguaggio SQL. L’utility
può essere scaricata liberamente all’indirizzo http://www.sqlite.org/download.html
(sezione “Precompiled Binaries For Windows”) e non richiede installazione.
Il programma si esegue digitando il comando sqlite3 dal prompt della shell (il co-
mando cmd.exe), seguito dal nome del file in cui si trova la basi di dati su cui si vuole
operare. Se il nome del file non corrisponde adu una base di dati esistente, ne verrà creata
una vuota. È anche possible evitare di specificare il file, in tal caso la base di dati verrà
creata in memoria e tutte le modifiche verranno quindi perse al termine dell’esecuzione
del programma.
A questo punto dovrebbe comparire il seguente messaggio:
2
Tuttavia, il sistema dinamico è perfettamente compatibile con quello statico (nel senso
che i comandi SQL si comportano allo stesso modo).
Nel corso delle esercitazioni cercate di usare il più possibile il linguaggio SQL con
la sintassi vista in aula. All’indirizzo www.sqlite.org/docs.html è disponibile una
descrizione completa del variante del linguaggio SQL impiegata da SQLite.
Esercizi
Si consiglia di usare un editor di testo per mantenere una copia dei comandi che invierete
a SQLite. In questo modo li potrete correggere e ripetere rapidamente in caso di errore.
Esercizio 2
1. Usando un editor di testo, create un file ‘voti.txt’ contenente alcune righe della
tabella esame (a vostra scelta, almeno una decina). I campi di ciascuna riga
dovranno essere separati dal carattere ‘|’. Esempio:
1|10-5-2010|123456|25|0
1|10-5-2010|123457|20|0
2|12-5-2010|123458|30|1
...
3
2. Usate il comando .import per copiare i dati dal file ‘voti.txt’ alla tabella Esame
(per ulteriori dettagli usato il comando .help o consultate la documentazione
online di SQLite);
4. salvate le righe della tabella STUDENTE in un file ‘studente.txt’. Per fare ciò:
a) usate il comando ‘.output studente.txt’;
b) eseguite il comando SELECT opportuno;
c) ripristinate l’output a video con il comando ‘.output stdout’.
1. elencare il numero di matricola degli studenti che hanno ottenuto un voto superiore
a 25 nel corso con codice ‘1’;
4. selezionare nome e cognome degli studenti che hanno ottenuto un voto maggiore
a 24 nel corso di ‘programmazione’.