簡體   English   中英

在MySQL中刪除表是否也會丟棄索引?

[英]Does dropping a table in MySQL also drop the indexes?

它沒有在文檔中明確提到( http://dev.mysql.com/doc/refman/6.0/en/drop-table.html )。 我問,因為我剛剛在Rails項目中看到了一個奇怪的數據庫遷移,開發人員在刪除表之前刪除了所有索引,這似乎沒必要。

是的,它確實。

但是,如果您有外鍵約束(如RESTRICT)以確保與其他表的引用完整性,則您需要在刪除或截斷表之前刪除這些鍵。

是的,它會降低指數。 如果基礎表不存在,則沒有理由保留索引。 我懷疑向下遷移只是在一對一的基礎上與向上遷移相反。

這是不必要的。 但是,當表是外鍵關系的一部分時,可能會阻止您的DROP TABLE,而刪除表會破壞依賴關系。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM