[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [volume] [parte]


Capitolo 611.   Preparazione

Prima di poter iniziare a eseguire gli esercizi di questa parte, dedicata alle basi di dati e al linguaggio SQL, è necessario verificare di disporre degli strumenti adatti ed essere sicuri di saperli utilizzare.

Per facilitare l'esecuzione di queste esercitazioni, sia gli esercizi, sia le verifiche sono realizzabili con SQLite, attraverso il programma sqlite3.

Gli esercizi prevedono l'uso di basi di dati personali, ognuna contenuta tutta in un file.

Le verifiche associate a queste esercitazioni portano a produrre dei fogli stampati, che gli studenti devono avere la cura di controllarle in base a quanto indicato nella traccia delle verifiche stesse, prima della consegna all'insegnante.

Per poter svolgere gli esercizi e le verifiche, ogni studente deve essere in grado di scrivere e modificare file di testo, con un programma adatto (per esempio va bene il programma Gedit). In questi file di testo vanno inserite le istruzioni SQL necessarie allo svolgimento del lavoro; per evitare confusione, i file che contengono codice SQL vengono nominati con l'estensione .sql.

Per eseguire le istruzioni SQL contenute in un file, si usa il programma sqlite3 nel modo seguente:

sqlite3 file_db < file_sql[Invio]

In questo caso, le istruzioni contenute nel file file_sql, vengono applicate alla base di dati contenuta nel file file_db.

Per essere certi di sapere usare gli strumenti occorre fare una prova. Si realizzi il file di testo denominato prova-istruzioni.sql, contenente quanto segue, sostituendo le metavariabili cognome, nome, classe e data con qualcosa di appropriato:

-- Esercizio di prova di: cognome nome classe
-- Data: data
-- File: prova-istruzioni.sql

CREATE TABLE Prova (Codice  INTEGER,
                    Cognome VARCHAR(60),
                    Nome    VARCHAR(60));

Una volta salvato il file con il nome stabilito, lo si esegue nella base di dati contenuta nel file prova.db. Dal momento che il file prova.db non esiste, essendo la prima volta che viene utilizzato questo nome, l'esecuzione delle istruzioni comporta automaticamente la creazione della base di dati relativa:

sqlite3 prova.db < prova-istruzioni.sql[Invio]

Se non si vedono segnalazioni di alcun genere, le istruzioni contenute nel file prova-istruzioni.sql sono state eseguite tutte con successo.

Le istruzioni contenute nel file prova-istruzioni.sql servono a produrre una relazione, denominata Prova, contenente alcuni attributi (Codice, Cognome e Nome).

Se il file contenente le istruzioni SQL contiene degli errori, o viene eseguito quando ciò non deve essere fatto, è probabile vedere apparire dei messaggi, che vanno letti attentamente. Per esempio, se venisse eseguito nuovamente il file prova-istruzioni.sql nella stessa base di dati, si otterrebbe una segnalazione che avvisa del fatto che la relazione Prova esiste già (e non può essere creata nuovamente):

sqlite3 prova.db < prova-istruzioni.sql[Invio]

CREATE TABLE Prova (Codice  INTEGER,
                    Cognome VARCHAR(60),
                    Nome    VARCHAR(60));
SQL error: table Prova already exists

Il programma sqlite3 può essere usato anche interattivamente. Per farlo, si avvia senza indicare il file contenente le istruzioni SQL. Si proceda in questo modo:

sqlite3 prova.db[Invio]

A questo punto appare l'invito del programma sqlite3, che indica la sua attesa di comandi o di istruzioni SQL, digitati direttamente:

sqlite> 

Con il comando .schema (si osservi il fatto che il comando inizia con un punto) è possibile visualizzare l'elenco delle relazioni esistenti, in forma di istruzione SQL. Si proceda inserendo questo comando:

sqlite> .schema[Invio]

CREATE TABLE Prova (Codice  INTEGER,
                    Cognome VARCHAR(60),
                    Nome    VARCHAR(60));

Si proceda inserendo l'istruzione necessaria a eliminare la relazione Prova creata poco prima:

sqlite> DROP TABLE Prova;[Invio]

Si conclude con il funzionamento di sqlite3 con il comando .quit:

sqlite> .quit[Invio]

Prima di passare ai capitoli successivi, vanno eliminati i file prova-istruzioni.sql e prova.db, che non servono più.

611.1   Indice dei file utilizzati

In questi esercizi, vengono creati una serie di file, che qui vengono elencati in ordine alfabetico, con il riferimento alla sezione in cui sono utilizzati.

Appunti di informatica libera 2007.02 --- Copyright © 2000-2007 Daniele Giacomini -- <daniele (ad) swlibero·org>


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome preparazione_1.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico]

Valid ISO-HTML!

CSS validator!