这更像是一个元问题,而不是我需要的实际帮助,但我在其他地方找不到有关它的信息。今天,我尝试从数据库中删除两个表,并在尝试时收到“外键约束失败”的错误消息。没问题,只需删除外键即可。所以我的查询如下所示:
ALTER TABLE Database.mytable
DROP FOREIGN KEY abc_ibfk_1;
ALTER TABLE Database.mytable
DROP COLUMN abc;
我收到另一条错误消息,上面写着“错误代码:1025。将'./Database/#sql-461_somerandomnumbers'重命名为'./Database/mytable'(errno:150)时出错”
我想我会使用内置的右键单击,在编辑表中删除列,因此我使用它并意识到它也使用“删除索引”。因此,我将代码更改为与 Workbench 完全一样:
ALTER TABLE Database.mytable
DROP FOREIGN KEY abc_ibfk_1;
ALTER TABLE Database.mytable
DROP COLUMN abc, DROP INDEX abc;
现在,这与 Workbench 完全一样,只是当我自己键入时它不会执行(错误消息上方),但是当我允许 Workbench 执行查询时它工作正常。
所以,我的问题是,当我无法复制/粘贴时,为什么 Workbench 能够执行放置查询?