0

我需要对 MySQL INNODB 表进行一些架构更改(将主键列从 INT 增大到 BIGINT)......似乎我必须删除主键......但如果我尝试:

ALTER TABLE `myschema`.`mytable` DROP PRIMARY KEY

我得到:

错误 1025:将 '.\myschema#sql-1344_36' 重命名为 '.\myschema\mytable' 时出错(错误号:150)

我可以删除整个表并重新创建它(只有几行数据的小表);但是,如果我尝试:

drop table `myschema`.`mytable`

我得到:

ERROR 1217:无法删除或更新父行:外键约束失败

如果我做:

use INFORMATION_SCHEMA;
select * from KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_NAME = 'mytable';

我返回零行,表明存在一些其他依赖项未通过 KEY_COLUMN_USAGE 显示

我宁愿不删除整个架构(而不必重新加载所有数据)......

是什么阻止我进行所需的架构更改?我如何识别它以及我可以采取什么样的纠正措施?

4

1 回答 1

2
SET FOREIGN_KEY_CHECKS=0

删除您的表并再次将其设置为 1

于 2013-07-31T19:43:49.007 回答