我创建了3个表Student
,Department
和Major_in
。
我想在email, Department_ID
的(Major_in
)上创建一个复合外键,该外键引用email
的主键Student
和Department_ID
的Department
。
CREATE TABLE Student
(
email VARCHAR(20) PRIMARY KEY
);
CREATE TABLE Department
(
Department_ID INTEGER PRIMARY KEY
);
CREATE TABLE Major_in
(
email VARCHAR(20),
Department_ID INTEGER,
FOREIGN KEY (roll, Department_ID)
REFERENCES (Student(email), Department(Department_ID)
);
但是我得到了错误
错误:“(”附近:语法错误
in
sqlite3`
最佳答案
弄清楚这样做是有效的,是一个基本的语法错误。
CREATE TABLE Major_in
(
email REFERENCES Student,
Department_ID REFERENCES Department,
PRIMARY KEY (email, Department_ID)
);
关于sql - 复合外键引用2个不同的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54497586/