1. ホーム
  2. mysql

[解決済み] 照合順序の不適当な組み合わせ MySQLエラー

2022-06-12 07:27:46

質問

大量のデータを処理する際に、このような奇妙なエラーが発生するのですが...。

Error Number: 1267

Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='

SELECT COUNT(*) as num from keywords WHERE campaignId='12' AND LCASE(keyword)='hello again 昔 ã‹ã‚‰ ã‚ã‚‹ å ´æ‰€'

これを解決するにはどうしたらよいのでしょうか。このエラーが発生しないように、何らかの方法で文字列をエスケープできますか。あるいは、何らかの方法でテーブルのエンコードを変更する必要がありますか。

どのように解決するのですか。

SET collation_connection = 'utf8_general_ci';

次に、データベースのために

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;

MySQLは時々、意味もなくスウェーデン語を忍ばせています。