MySQL で二重エンコードされた UTF8 文字を修正する方法?

DDD
リリース: 2024-10-30 23:22:30
オリジナル
641 人が閲覧しました

How to Fix Double-Encoded UTF8 Characters in MySQL?

二重エンコードされた UTF8 文字からの回復

LOAD DATA INFILE を使用して以前にインポートされたデータは、誤って Latin1 でエンコードされていると想定されていました。その結果、マルチバイト文字は個々のバイトに分割され、その後 UTF8 でエンコードされ、二重エンコードが発生しました。これにより、"ñ" ではなく "ã±" などの文字が破損します。

これらのエラーを修正するには、特別な MySQL 関数を利用して、二重エンコード後に正しい UTF8 文字列を復元できます。

CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8)
ログイン後にコピー

この関数を UPDATE ステートメントに統合して、影響を受けるフィールドを修正できます:

UPDATE tablename SET
    field = CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8);
ログイン後にコピー

このステートメントを実行すると、データベースは二重エンコードされた値を正しい UTF8 対応する値に置き換え、解決します。性格の異常

以上がMySQL で二重エンコードされた UTF8 文字を修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!