MySQL の BLOB/TEXT キー仕様エラーのトラブルシューティング
BLOB または TEXT カラムを含む MySQL テーブルで主キーまたはインデックスを定義すると、次のエラーが発生することがよくあります:
<code>BLOB/TEXT column 'message_id' used in key specification without a key length</code>
このエラーは、MySQL インデックスには固定長のデータ型が必要であるために発生します。 BLOB 列と TEXT 列は可変長であるため、インデックス サイズを決定するためにキーの長さの指定が必要です。 ただし、BLOB/TEXT のキー長を直接指定することはサポートされていません。
解決戦略:
いくつかのアプローチでこの制限に対処できます。
さらなる考慮事項:
「キー長のないキー指定」エラーは、BLOB/TEXT 列が直接関与していなくても発生する可能性があります。 これは、VARCHAR キーの長さが 255 文字を超えると発生し、SMALLTEXT への暗黙的な変換がトリガーされます。
これを回避するには、キーで使用されるすべての VARCHAR 列の最大長が 255 文字未満であることを確認してください。
以上がMySQL の「キーの長さのないキー仕様で BLOB/TEXT カラムが使用されています」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。