场景:
表A结构如下:
id(主键)
col1
col2
clo3
表B:
id
a_col1 (外键,引用表A的col1)
....
创建表A后,创建B,报错:
[Err] 1005 - Can't create table 'test.B' (errno: 150)
原因如下:
表B的a_col1列外键是A.col1,那就要去表A的col1列必须设置为主键或者Unique约束。否则B.a_col1不知道引用的是哪个外键对象。
--end
本文解析了在外键定义中常见的错误——当表B试图引用表A的非主键或非唯一约束列时出现的错误。文章详细介绍了如何解决此问题,并确保外键正确引用。
场景:
表A结构如下:
id(主键)
col1
col2
clo3
表B:
id
a_col1 (外键,引用表A的col1)
....
创建表A后,创建B,报错:
[Err] 1005 - Can't create table 'test.B' (errno: 150)
原因如下:
表B的a_col1列外键是A.col1,那就要去表A的col1列必须设置为主键或者Unique约束。否则B.a_col1不知道引用的是哪个外键对象。
--end

被折叠的 条评论
为什么被折叠?