【发布时间】:2020-07-15 10:02:00
【问题描述】:
我在向该表添加多个外键约束时遇到问题。我收到一个错误提示
外键约束格式不正确
引用的两个 id 都是各自表中的主键。我做错了什么?
CREATE TABLE `works_on` (
`eid` int(11) DEFAULT NULL,
`pid` int(11) DEFAULT NULL,
`start_date` date NOT NULL,
PRIMARY KEY (`eid`, `pid`),
CONSTRAINT `works_on_ibfk_1` FOREIGN KEY (`eid`)
REFERENCES `employee` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `works_on_ibfk_2` FOREIGN KEY (`pid`)
REFERENCES `project` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB
【问题讨论】:
-
您使用的是什么数据库系统? MySQL?微软 SQL?玛丽亚数据库?
-
请始终向我们展示完整的错误消息
-
对不起,我正在使用 MariaDB,当我尝试运行查询时,它显示“外键格式不正确”。此外,VSCode 说的是“。”预计在第二个约束开始时。
-
这是多:多映射表吗?需要
SET或CASCADE的场景是什么?
标签: mysql sql database mariadb