MySQL外键ERROR 1025

时间:2011-11-16 14:06:08

标签: mysql

如果我有3个表,请说table1,table2和table3。

table1: userID is a primary key.
table2: userID is a foreign key to table1.
table3: I can't get userID to be a foreign key to table 1?

ERROR 1025: Error on rename of.... (errno: 152)

问题可能是什么? userID都是INT,所有表都使用InnoDB ...

2 个答案:

答案 0 :(得分:0)

尝试像

一样创建表格
create table table3(a int not null, foreign key(a) references table1 (a))

应该可以正常工作。

另外,试试SHOW ENGINE INNODB STATUS您将获得有关出错的更多信息。

答案 1 :(得分:0)

也有#1025,我的问题是整理。您尝试与FK关联的字段必须具有相同的排序规则。

http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html “对于非二进制(字符)字符串列,字符集和排序规则必须相同。”