0

我正在使用 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 */
4

0 回答 0