二重エンコードされた UTF8 文字の修正
文字エンコードが正しくないと、「ñ」などのスペイン語文字の変換などのデータ異常が発生する可能性があります。 「Ãã±」に。 CSV ファイルが誤って Latin1 エンコードとして解釈され、その後 UTF8 で再度エンコードされる場合に発生する UTF8 文字の二重エンコードが、この問題の一般的な原因です。
この問題を解決し、意図した文字を復元するには
CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8)
この関数は、二重エンコードされた文字列を受け取り、まず CONVERT(field USING latin1) を使用して Latin1 バイナリ文字列に変換し、次に正しく再エンコードします。 CONVERT(CAST(...) AS BINARY) USING utf8) を使用して UTF8 に変換します。
データに修正を適用するには、次の更新ステートメントを使用します。
UPDATE tablename SET field = CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8);
このステートメントは、 tablename テーブル内の指定されたフィールドを更新し、二重エンコードされた文字を適切な UTF8 文字に置き換えます。文字エンコーディングを適切に処理することで、データの整合性と正確性を確保できます。
以上がMySQL データベース内の二重エンコードされた UTF8 文字を修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。