簡體   English   中英

如果我刪除一個 MySQL 列而不先刪除它的索引會發生什么?

[英]What happens if I drop a MySQL column without dropping its index first?

對於我的一個 MySQL 表,我在從包含它的唯一索引(col0、col1、col2、col3)中刪除它之前刪除了列col1

MySQL會自動處理嗎? 在我刪除列 col1 后,以前的唯一索引(col0、col1、col2、col3)似乎自動更改為(col0、col2、col3)。

這會是一個問題還是我必須刪除唯一索引並將其重新創建為 (col0, col2, col3)?

根據MySQL 5.1 參考手冊

如果從表中刪除列,列也會從它們所屬的任何索引中刪除。 如果構成索引的所有列都被刪除,則該索引也會被刪除。 如果使用 CHANGE 或 MODIFY 縮短列上存在索引的列,並且生成的列長度小於索引長度,MySQL 會自動縮短索引。

暫無
暫無

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

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