lunedì 1 dicembre 2008

Esercitazione



LETTORE(codice, nome, indirizzo, età)
ACQUISTA(numProg, *codLettore, *codicelibro, data);
LIBRO(codiceLibro, autore, titolo, prezzo);

/Codice MYSQL/
create table lettore(codice integer primary key, nome text, età integer, indirizzo text);
create table libro(codice integer primary key, autore text, titolo text, prezzo integer);
create table acquista(numProg primary key, codiceLibro integer foreing key, codiceLettore foreing key, data text);

insert into lettore values(1, 'Alberto', 33, 'via case sparse');
insert into lettore values(2, 'Giovanni', 33, 'via del giglio');
insert into lettore values(3, 'Gianluca', 33, 'via nuova');

insert into libro values(1,'Dante Alighieri','Divina Commedia',22 );
insert into libro values(2,'Boccaccio','Il Decamerone', 18);
insert into libro values(3,'Manzoni','Promessi Sposi', 24);

insert into acquista values(1, 2, 3, '01/12/2008');
insert into acquista values(3, 1, 2, '20/11/2008');
insert into acquista values(2, 3, 1, '24/11/2008');

.mode coluan
.headers
select * from lettore;
select * from libro;
select * from acquista;
select lettore.nome, libro.titolo, libro.prezzo;
from lettore, libro, acquista
where lettore.codice=acquista.codiceLettore and libro.codice=acquista.codiceLibro and acquista.codiceLettore=2;

2 commenti:

didatticaNatalizi ha detto...

Va bene. La insert è insert into legge values(1,2,3,'01/12/2009');
Ossia i valori di tipo text devono essere racchiusi tra apici.
Termina l'esercizio provandolo con sqlite3. Ti ricordo che devi creare il database con il comando sqlite3 nomeDatabase.db

Andrea ha detto...

Grazie di avermelo detto ora lo farò. Intanto ho corretto i valori di tipo text aggiungendo degli apici e ho rifatto l'esercizio. Penso che vada bane.