如何修復 MySQL 中的雙編碼 UTF8 字元?

DDD
發布: 2024-10-30 23:22:30
原創
641 人瀏覽過

How to Fix Double-Encoded UTF8 Characters in MySQL?

從雙編碼 UTF8 字元中復原

先前使用 LOAD DATA INFILE 匯入的資料被錯誤地假定為以 Latin1 1 編碼。因此,多位元組字元被拆分為單獨的位元組,隨後以 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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!