Salve a tutti....sono nuovo del forum...e soprattutto sono alle prime armi con sql....Stavo preparando un progettino per l'uni..Si tratta dell'organizzazione di un negozio di cd.....ma insorgono dei problemi nella creazione della tabella "Copie"...nn riesco a capire il motivo.....vi posto il codice:
create table album
( cd varchar (20) not null,
autore varchar (20) not null,
titolo varchar (30) not null,
anno_pubblicazione numeric (4),
cod_casa_discografica numeric(18),
constraint pk_album primary key (cd),
constraint fk_album_casa_discografica foreign key (cod_casa_discografica) references casa_discografica ( cod_casa_discografica)
);
create table casa_discografica
( cod_casa_discografica numeric (18) not null,
nome varchar (50),
citta varchar(50),
nazione varchar (50),
constraint pk_casa_discografica primary key( cod_casa_discografica)
);
create table autore
( cod_autore numeric(18) not null,
nome varchar (50) not null,
cognome varchar (50) not null,
nome_arte varchar(50) not null,
constraint pk_autore primary key (cod_autore)
);
create table composizione
( cod_autore numeric(18),
cd varchar (20),
constraint pk_composizione primary key (cod_autore, cd),
constraint fk_composizione_album foreign key (cd) references album(cd),
constraint fk_composizione_autore foreign key (cod_autore) references autore (cod_autore)
);
create table scaffale
(cod_scaffale numeric (20),
piano numeric (20),
stanza numeric(4),
constraint pk_scaffale primary key (cod_scaffale)
);
create table copie
( cod_copia smallint (20),
cd varchar (20) not null,
data_vendita date,
prezzo numeric (10),
cod_fornitore numeric(18),
disponibilita char(1) default 's' not null,
cod_scaffale numeric(20) not null,
constraint pk_copie primary key (cod_copia),
constraint fk_copie_album foreign key (cd) references album (cd),
constraint fk_copie_scaffale foreign key (cod_scaffale) references scaffale (cod_scaffale),
constraint fk_copie_fornitore foreign key (cod_fornitore) references fornitori(cod_fornitore),
constraint ck_copie_disponibilita check (disponibilita in ('s','n'))
);
create table fornitori
( cod_fornitore numeric(20) not null,
indirizzo varchar (50) not null,
telefono varchar (20) not null,
p_iva varchar (20)not null
);
vi riporto anche l'errore:
l risultato dell'interrogazione con 0 righe verrà restituito.
ERROR: syntax error at or near "smallint"
LINE 2: ( cod_copia smallint (20),
^
********** Errore **********
ERROR: syntax error at or near "smallint"
Stato SQL: 42601
Carattere: 40
Non so' piu' cosa inventarmi.....aiutatemi.... dimenticavo di aggiungere che uso postgres sql...Grazie per la gentile attenzione a tutti!
Ciao Francesco