丢弃MySQL表是否自动删除该表的索引?是否会自动删除该表的索引?
14
A
回答
15
是的。它会降低索引。这可以验证:
CREATE TABLE table1 (foo INT); CREATE INDEX ix_table1_foo ON table1 (foo); CREATE INDEX ix_table1_foo ON table1 (foo); -- fails: index already exists. DROP TABLE table1; CREATE TABLE table1 (foo INT); CREATE INDEX ix_table1_foo ON table1 (foo); -- succeeds: index does not exist.
您也可以通过查看information schema验证:
CREATE TABLE table1 (foo INT); CREATE INDEX ix_table1_foo ON table1 (foo); SELECT COUNT(*) FROM information_schema.STATISTICS WHERE INDEX_NAME = 'ix_table1_foo'; -- returns 1 DROP TABLE table1; SELECT COUNT(*) FROM information_schema.STATISTICS WHERE INDEX_NAME = 'ix_table1_foo'; -- returns 0
0
http://dev.mysql.com/doc/refman/5.1/en/drop-table.html
表中的所有数据和表 定义被删除,所以要小心 这种说法!
1
是的,它的确如此。如果没有表格,那么没有理由保留索引。
您可以通过创建MyISAM表并在数据文件夹中查找tablename.MYI
来确认。一旦你放弃了这个表格,这个文件就会消失。
1
是的。索引是其所有者表的一部分,并在丢失时与行数据一起释放。
(上引用它会阻止表中的其他表的外键索引被丢弃。)
1
当一个表被丢弃的所有数据,索引和链接的信息将被删除以及。 您可以将此视为一行的级联删除,当您删除一行时,所有链接到它的信息也将被删除(外键等)
相关问题
- 1. 是否插入/更新/删除记录自动更新索引?
- 2. MySQL - 当表被删除时,索引是否被删除?
- 3. 问:Mongodb上的删除索引是否会创建锁定?
- 4. 删除关系时,在回收关系标识之前,指向该关系的索引是否会被删除?
- 5. 删除Elasticsearch索引(或所有indecies)是否也会删除实际数据?
- 6. 当删除约束时,支持索引是否也会被删除?
- 7. 在MongoDB中,如果文档被删除,索引也会自动删除?
- 8. 我是否需要删除临时表上的索引?
- 9. Nginx是否会自动删除设置为有效的缓存?
- 10. 主键是否自动索引?
- 11. 在MySQL中删除表还是删除索引?
- 12. Do VAOs是否也会自动绑定索引数组?
- 13. 删除索引
- 14. 删除索引不会删除获取mapper_parsing_exception的数据吗?
- 15. 索引后自动从内存中删除索尔
- 16. 清除表而不删除索引
- 17. 删除表时删除了临时表上的索引吗?
- 18. 是否可以删除java中的数组的索引?
- 19. 我应该重置表索引/删除多行后优化吗?
- 20. 删除lwuit列表中的索引
- 21. 删除索引处的列表元素?
- 22. Firefox会话不会自动删除
- 23. phpMyAdmin删除索引
- 24. 删除SQL服务器中的聚集索引是否安全?
- 25. 如何删除App Engine中的自动索引?
- 26. 搜索索引上重新启动时自动删除AppEngine上devserver的蟒蛇
- 27. 删除索引WordPress的
- 28. GC不清除(是:临时文件不会自动删除,Ruby)
- 29. 是否可以在MySQL中删除主键索引?
- 30. 是否有可能在Lucene.net索引中取消删除文档?
这不是因为特殊的问题,因为我认为这是一读,其实。虽然MySQL的文档没有明确提到DROP TABLE会删除所有索引,但我认为这是隐含的。 – 2010-05-18 00:05:49