在 MySQL 中删除表也会删除索引吗? [英] Does dropping a table in MySQL also drop the indexes?

查看:210
本文介绍了在 MySQL 中删除表也会删除索引吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

文档中没有明确提及(http://dev.mysql.com/doc/refman/6.0/en/drop-table.html).我问是因为我刚刚在 Rails 项目中看到一个奇怪的数据库迁移,其中开发人员在删除表之前删除所有索引,这似乎没有必要.

It's not explicitly mentioned in the documentation (http://dev.mysql.com/doc/refman/6.0/en/drop-table.html). I ask because I just saw a curious database migration in a Rails project where the developer was removing all the indexes before dropping the table, and that seemed unnecessary.

推荐答案

是的,确实如此.

但是,如果您有外键约束(例如 RESTRICT)来确保与其他表的参照完整性,则您需要在删除或截断表之前删除这些键.

However, if you have foreign key constraints such as RESTRICT that ensure referential integrity with other tables, you'll want to drop those keys prior to dropping or truncating a table.

这篇关于在 MySQL 中删除表也会删除索引吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆