Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya boleh menukar aksara Latin1 dengan betul dalam Jadual MySQL UTF8 kepada UTF8?
Tukar Aksara Latin1 dalam Jadual UTF8 kepada UTF8
Anda telah menghadapi isu di mana aksara dengan diakritik (cth., "Jáuò Iñe" ) telah tersilap disimpan dalam jadual UTF8 kerana tiada Panggilan "mysql_set_charset('utf8')".
Untuk menyelesaikan masalah ini, anda cuba menukar baris yang terjejas menggunakan "mb_convert_encoding" dan "iconv." Walau bagaimanapun, kaedah ini gagal menangkap aksara melebihi aksara "haram" pertama (diwakili sebagai "ă" dalam contoh).
Pendekatan yang disyorkan untuk membetulkan data ialah menggunakan fungsi MySQL:
convert(cast(convert(name using latin1) as binary) using utf8)
Penjelasan:
Dalam sesetengah kes, penukaran dalaman mungkin tidak diperlukan, kerana data mungkin sudah disimpan dalam format binari yang sesuai untuk penukaran kepada UTF-8. Menguji kedua-dua pilihan harus menentukan pendekatan yang betul untuk situasi anda.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menukar aksara Latin1 dengan betul dalam Jadual MySQL UTF8 kepada UTF8?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!