この記事では、主に mysql クエリの文字セットの不一致の問題の解決策をサンプル コードを通じて詳しく紹介しています。この問題に遭遇した友人にとっては、確かな参考と学習価値があります。編集者をフォローして一緒に学びましょう。皆さんのお役に立てれば幸いです。
MySQL データベースはテーブルの作成時にラテン文字セットを使用することがあり、Web ページのクエリが utf-8 である場合、入力ページに中国語を入力してデータベースでクエリを実行すると、このエラーが報告されますER_CANT_AGGREGATE_2COLLATIONS: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='
。スタックオーバーフローでこのデータベースとデータテーブルの文字セットを変更する方法を見つけました。
SET collation_connection = 'utf8_general_ci'
注: 次の 2 つの文をデータベース名とデータ テーブル名に置き換えてください
ALTER DATABASE your_database_name CHARACTER SET utf8 COLLATE utf8_general_ci ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci
これにより、データベースも utf-8 文字セットであることが保証されます。中国語で入力するときにデータベース内のコンテンツをクエリするときにエラーが発生します。
参考: 不正な照合順序の組み合わせ MySQL エラー
PHP でデータベースの文字セットを utf-8 に設定します
mysqli_set_charset($dbc,'utf8');
html に utf-8 を示すメタを追加するだけです
<meta charset="utf-8">
関連推奨:
以上がmysqlクエリの文字セットの不一致問題の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。