Can't create table './store/#sql-b2c_1a.frm' (errno: 150)和sql execution error #1452添加外键时错误解决方法

Can't create table './store/#sql-b2c_1a.frm' (errno: 150)解决方法

错误原因有四:

1、外键的引用类型不一样,主键是int外键是char
2、找不到主表中 引用的列
3、主键和外键的字符编码不一致
4.还有要建立外键的话,要先建立索引。没有建立索引也会出错。

 

我的错误原因是将一个bigint的外键指向了一个int类型的主键,都改成bigint或者int就解决了。

 

转载自:

http://www.cnblogs.com/xwdreamer/archive/2009/12/27/2297188.html

 

今天又碰到了这个问题,这次是引用的外键在另外一个表中不是主键,也没有建立索引

再引用一片文章

http://www.iteye.com/problems/103359

 

第二种#1452错误删除掉存放外键的表中的数据即可,或者主外键的表数据都删除

你可能感兴趣的:(create)