Non ho mai "codificato manualmente" il codice di creazione di oggetti per SQL Server e la declerazione di chiavi esterne è apparentemente diversa tra SQL Server e Postgres. Ecco il mio sql finora:
drop table exams;
drop table question_bank;
drop table anwser_bank;
create table exams
(
exam_id uniqueidentifier primary key,
exam_name varchar(50),
);
create table question_bank
(
question_id uniqueidentifier primary key,
question_exam_id uniqueidentifier not null,
question_text varchar(1024) not null,
question_point_value decimal,
constraint question_exam_id foreign key references exams(exam_id)
);
create table anwser_bank
(
anwser_id uniqueidentifier primary key,
anwser_question_id uniqueidentifier,
anwser_text varchar(1024),
anwser_is_correct bit
);
Quando eseguo la query ottengo questo errore:
Messaggio 8139, livello 16, stato 0, riga 9 Il numero di colonne di riferimento in chiave esterna differisce dal numero di colonne di riferimento, tabella "question_bank".
Riesci a individuare l'errore?