MySQL インデックスの長さの制約について
質問で提供されているコマンドを実行すると、インデックス キーが長すぎるためにエラーが発生します。長さ。 MySQL で許可されるキーの最大長は 1000 バイトです。
エラーの原因
エラーは、'acts_as_taggable_on' gem の移行試行におけるインデックス定義が原因で発生します。 taggable_id、taggable_type、context の 3 つのフィールドを持つインデックスを作成します。これらのフィールドの組み合わせは 1000 バイトの制限を超えています。
解決策
エラーを解決するには、次の点を理解する必要があります:
例:
'your_column の最初の 50 文字のみにインデックスを作成するには' 列では、次の構文を使用できます。使用:
CREATE INDEX example_idx ON YOUR_TABLE(your_column(50))
注:
以上がMySQL インデックスが長すぎるのはなぜですか?どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。