理解MySQL索引長度約束
運行問題中提供的命令時,由於索引鍵太長而遇到錯誤長的。 MySQL 允許的最大金鑰長度為 1000 位元組。
錯誤原因
發生錯誤是因為 'acts_as_taggable_on' gem 的遷移嘗試中的索引定義建立一個包含三個欄位的索引:taggable_id、taggable_type 和 context。這些欄位的組合超出了 1000 位元組的限制。
解決方案
要解決這個錯誤,需要了解以下幾點:
僅對 'your_column 的前 50 個字元建立索引'列,以下語法可以是使用:
CREATE INDEX example_idx ON YOUR_TABLE(your_column(50))
部分索引將限制索引對超出指定部分的搜尋的有效性。
以上是為什麼我的 MySQL 索引太長,要如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!