MySQL外键约束错误代码1215

标签 mysql foreign-keys

任何人都可以看到我的表 contactgroup 的创建语句的问题。我不断收到错误代码 1215 无法创建外键约束。

create table contact( 
ContactID int(5) not null auto_increment, 
ContactName varchar(255) Not null, 
ContactNumber int(5), 
ContactEmail varchar(255), 
primary key(ContactID))ENGINE=InnoDB DEFAULT CHARSET=utf8;
<小时/>
create table contactgroup(
ContactGroupID int(5) Not Null,
ContactID int(5) Not Null,
primary key(ContactGroupID),
key fk_contactgroup_ContactID (ContactID),
constraint fk_contactgroup_ContactID 
foreign key(ContactID) 
references contact) ENGINE=InnoDB DEFAULT CHARSET=utf8;

最佳答案

定义外键约束时,您需要提及表该表的主键列:

FOREIGN KEY (ContactID) REFERENCES contact(ContactID)

关于MySQL外键约束错误代码1215,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46130343/

相关文章:

sql - 在 MS SQL Server 中的多个表之间共享基于相同列的复合外键

php - 查找所有不符合条件的行,MySQLi MySQL PHP

MySQL InnoDB : autoincrement non-primary key

php - 更新数据在 Php 和 MySql 中不起作用

php - 表中同一字段的多个查询

node.js - 如何 Promise.all Mongoose 文档插入的多个数组

django:如何从包含外键的多个模型制作一种表单

ruby-on-rails - rails 4 中的外键

php - 我对两个表的选择无法正常工作

sql - 内存表、临时表和数据透视表之间有什么区别?