admin

一个带有2个引用表的外键

sql

是否可以有一个带有两个参考表的外键?

这是脚本,我们在插入该表时遇到了问题

CREATE TABLE Class(
    idNumber varchar(30) not null,
    day varchar(10) not null,
    time varchar(20) not null,
    foreign key(idNumber) REFERENCES ThesisMember(idNumber),
    foreign key(idNumber) REFERENCES Faculty(idNumber),
    PRIMARY KEY(idNumber,day,time)
);

CONSTRAINT `class_ibfk_1`
    FOREIGN KEY (`idNumber`) REFERENCES `thesismember` (`idNumber`))

SQL语句:

INSERT INTO `thesis`.`class`
    (`idNumber`, `day`, `time`) VALUES ('9990', 'F', '0940-1110')

“学院”表的idNumber为“ 9990”。


阅读 150

收藏
2021-06-07

共1个答案

admin

FK约束要求字段“ idNumber”的每个实例都出现在所有引用的表中。您声明只有一个被引用的表具有要插入的值,因此在INSERT尝试中当然会发生错误。

2021-06-07