【发布时间】:2017-06-12 17:27:50
【问题描述】:
所以我很难理解为什么这段代码 sn-p 给了我一个
Error: 150 "Foreign key constraint is incorrectly formed"尝试创建 FK 时
CREATE TABLE T1 (
t1ID INT AUTO_INCREMENT,
/* ... unrelated columns */
PRIMARY KEY (t1ID)
);
CREATE TABLE T2 (
t3fk INT NOT NULL,
t1fk INT,
/* ... unrelated columns */
CONSTRAINT t2ID PRIMARY KEY (t3fk,t1fk),
FOREIGN KEY (t1fk) REFERENCES T1(t1ID) ON DELETE SET NULL
);
我要做的是在 t1 和 t2 之间创建 c:n 关系,其中 t2 具有组合 PK,其中 (t3fk:null) 是有效标识符
我已经搜索了很长一段时间的答案,但我只找到这样的结果,其中 FK 列设置为不接受空值:
MySQL - Foreign key on delete set null in not null field
MySQL: error 150 using ON UPDATE SET NULL and ON DELETE SET NULL, why?
我正在使用 InnoDB。
感谢您的关注(也欢迎对未来的问题提供反馈)
【问题讨论】:
标签: mysql sql constraints innodb