ホームページ > データベース > mysql チュートリアル > MySQL の「不正な照合順序の組み合わせ」エラーを解決するには?

MySQL の「不正な照合順序の組み合わせ」エラーを解決するには?

DDD
リリース: 2024-12-22 13:37:17
オリジナル
605 人が閲覧しました

How to Solve MySQL's

MySQL の「不正な照合順序の組み合わせ」エラーのトラブルシューティング

ストアド プロシージャの実行中に MySQL で「不正な照合順序の組み合わせ」エラーが発生した場合根底にあるものを掘り下げることが賢明です

照合順序は、MySQL で重要な役割を果たし、文字セットとソート ルールを決定します。テーブルと WHERE 句で参照される列の間の照合順序が一致しないと、このエラーが発生する可能性があります。

この問題を解決するには、比較に含まれる両方の列に共有照合順序を指定します。 COLLATE 句を使用すると、特定の式のデフォルトの照合順序をオーバーライドできます。例:

WHERE 'A' COLLATE latin1_general_ci = 'A' COLLATE latin1_general_cs
ログイン後にコピー

このクエリでも、異なる照合順序で文字列を比較するため、エラーが発生します。代わりに、共有照合順序を明示的に指定する必要があります:

SELECT * FROM table ORDER BY key COLLATE latin1_general_ci;
ログイン後にコピー

または、BINARY 演算子を利用して、照合順序を無視してバイナリ比較を強制することもできます:

SELECT * FROM table WHERE BINARY a = BINARY b;
ログイン後にコピー
SELECT * FROM table ORDER BY BINARY a;
ログイン後にコピー

BINARY 演算子の場合のように、比較のために列をキャストすると、インデックス作成のパフォーマンスに影響を与える可能性があります。 MySQL 照合順序の詳細については、eggyal の包括的な回答を参照してください。

以上がMySQL の「不正な照合順序の組み合わせ」エラーを解決するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート