Membetulkan Aksara UTF8 Berekod Berganda
Pengekodan aksara yang salah boleh membawa kepada anomali data, seperti penukaran aksara Sepanyol seperti "ñ" kepada "ñ." Pengekodan dua aksara UTF8, yang berlaku apabila fail CSV ditafsir secara salah sebagai dikodkan Latin1 dan kemudiannya dikodkan semula dalam UTF8, adalah punca biasa isu ini.
Untuk menyelesaikan isu ini dan memulihkan aksara yang dimaksudkan representasi, MySQL menyediakan fungsi khusus:
CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8)
Fungsi ini mengambil rentetan dwikod, mula-mula menukarnya kembali kepada rentetan binari Latin1 menggunakan CONVERT(medan MENGGUNAKAN latin1), dan kemudian mengekodnya semula dengan betul kepada UTF8 menggunakan CONVERT(CAST(...) AS BINARY) MENGGUNAKAN utf8).
Untuk menggunakan pembetulan pada data anda, gunakan pernyataan kemas kini berikut:
UPDATE tablename SET field = CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8);
Pernyataan ini akan kemas kini medan yang ditentukan dalam jadual nama jadual, menggantikan aksara dwikod dengan persamaan UTF8 yang betul. Dengan mengendalikan pengekodan aksara dengan betul, anda boleh memastikan integriti dan ketepatan data anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan Aksara UTF8 Berkod Dua dalam Pangkalan Data MySQL Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!