原因:
1. 参照字段和被参照字段 类型不一致
2. 被参照字段不是索引字段
添加索引:
alter table 表名 add index 索引名;
添加外键:
alter table 表名 add foreign key 外键名 references 被参照表名(被参照列名)
注意:
1. 添加外键语句不需要constraint标识符,
2. 外键名可选,如果不写外键名,默认以字段名称作为外键名
3. 索引名可选,如果不写索引名,默认以字段名称作为索引名
Mysql创建外键索引时,出现errno150错误
发现参照表字段被设置了unsigned, 被参照表的被参照字段未设置unsigned
去掉方法:
Navicat中选中该字段,去掉下面勾选