如下语句
`mysql> alter table todomodel_tasks add foreign key(user,projects) references tod
omodel_projects(user,name);`
在tododmoel_projects中 user和name 是一个组合,他们合起来是主键。
不是说外键只要对应其他表里的主键就好了吗。
然而会报下列错误
Cannot add foreign key constraint
问问各位大神们这是咋回事呢
你所用的 todomodel_projects(user,name) 是复合主键或叫联合主键,如果另一个表想做外链键引用这个复合主键,其所用的字段类型必须与主键对应一致,你看看todomodel_tasks.name与todomodel_projects.projects这两个字段的类型是不是不一致,所以导致创建错误。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。