删除列在MySQL Workbench中不起作用

时间:2013-03-20 09:52:26

标签: mysql mysql-workbench mysql-error-1025

这更像是一个元问题,而不是我需要实际帮助,但我无法在其他地方找到相关信息。今天,我试图从数据库中删除两个表,并在尝试时收到错误消息,即"外键约束失败"已经发生了。没问题,只需删除外键。所以我的查询如下所示:

ALTER TABLE Database.mytable
DROP FOREIGN KEY abc_ibfk_1;
ALTER TABLE Database.mytable
DROP COLUMN abc;

我收到另一条错误消息,上面写着"错误代码:1025。重命名' ./ Database / #sql-461_somerandomnumbers'到' ./ Database / mytable' (错误:150)"

我想我会使用编辑表中的内置右键单击,删除列,所以我使用它并实现它使用" drop index"同样。所以我改变我的代码看起来就像Workbench自己做的那样:

ALTER TABLE Database.mytable
DROP FOREIGN KEY abc_ibfk_1;
ALTER TABLE Database.mytable
DROP COLUMN abc, DROP INDEX abc;

现在,这正是Workbench所做的,只是当我自己输入它时它不会执行(上面的错误信息)但是当我允许Workbench执行查询时它工作正常。


所以,我的问题是为什么Workbench能够在我无法复制/粘贴它时执行删除查询?

1 个答案:

答案 0 :(得分:0)

可能会(错误地)扩充您手动执行的查询,例如添加了自动LIMIT子句。运行该查询后,查看输出区域(Action Output)。它包含发送到服务器的确切查询。它有什么不寻常的吗?或者,使用admin部分查看常规日志(如果已启用)以查看已发送的查询。