Добрый день!Derby: ссылки на несколько внешних ключей из разных таблиц
Я искал Интернет для ответа на мою проблему, но я не смог его получить. Как ссылаться на внешние ключи из разных таблиц в базе данных Derby?
Это мой текущий код SQL:
CREATE TABLE class_t
(course_id VARCHAR(6) NOT NULL,
semester VARCHAR(6) NOT NULL CONSTRAINT sem_constraint CHECK (semester IN ('1st','2nd','module')),
school_year DATE NOT NULL,
course_name VARCHAR(70) NOT NULL,
CONSTRAINT class_pk PRIMARY KEY (course_id, semester, school_year)
);
CREATE TABLE student_t
(id_number INT NOT NULL,
fullname VARCHAR(35) NOT NULL,
contact_num VARCHAR(35),
email VARCHAR(25),
CONSTRAINT student_pk PRIMARY KEY (id_number)
);
CREATE TABLE student_list
(course_id VARCHAR(6) NOT NULL,
semester VARCHAR(6) NOT NULL CONSTRAINT sem_constraint2 CHECK (semester IN ('1st','2nd','module')),
school_year DATE NOT NULL,
id_number INT NOT NULL,
CONSTRAINT student_list_pk PRIMARY KEY (course_id, semester, school_year, id_number),
CONSTRAINT student_list_FK FOREIGN KEY (course_id, semester, school_year, id_number)
REFERENCES class_t (course_id, semester, school_year), student_t (id_number) #this is my problem
);
Ваша помощь очень ценится! Заранее спасибо.
Что бы вы хотели написать вместо слова '(course_id, ... id_number)' в объявлении вашего внешнего ключа? – sarnold
@sarnold Вы имеете в виду следующее: 'REFERENCES class_t, student_t (course_id, semester, school_year, id_number)'? Я попробовал, но у него все еще есть ошибка. –