我正在使用 HeidiSQL 8.1.0 版,并通过使用不同的索引来提高某些查询的性能。不小心我添加了一个我很快删除的字段。然后没有保存我正在改变我的索引。结果是整个表都被删除了。有人能解释发生了什么吗?这怎么可能?
在查询历史中,我发现:
SHOW CREATE TABLE `foo_database`.`nodes`;
ALTER TABLE `nodes`
ALTER `parent_id` DROP DEFAULT;
ALTER TABLE `nodes`
CHANGE COLUMN `parent_id` `parent_id` BINARY(16) NULL AFTER `id`,
DROP INDEX `rgt`,
DROP INDEX `lft`,
ADD INDEX `set` (`lft`, `rgt`) USING BTREE;
/* SQL Error (1025): Error on rename of './foo_database/#sql-43c_31' to './foo_database/nodes' (errno: 150)
Foreign key constraint is incorrectly formed */
ALTER TABLE `nodes`
ALTER `parent_id` DROP DEFAULT;
/* SQL Error (1146): Table 'foo_database.nodes' doesn't exist */