Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Membetulkan Pengekodan UTF-8 yang Rosak dalam Pangkalan Data MySQL Saya?

Bagaimanakah Saya Boleh Membetulkan Pengekodan UTF-8 yang Rosak dalam Pangkalan Data MySQL Saya?

DDD
Lepaskan: 2024-12-09 14:20:15
asal
568 orang telah melayarinya

How Can I Fix Broken UTF-8 Encoding in My MySQL Database?

Membetulkan Pengekodan UTF-8 Rosak: Penyelesaian Praktikal

Latar Belakang:

Pengguna kerap menghadapi masalah dengan pengekodan UTF-8 yang rosak, dicirikan oleh aksara seperti î dan bukannya beraksen watak. Masalah ini timbul daripada ketidakkonsistenan dalam pengumpulan pangkalan data, tetapan PHP dan kaedah storan.

Memetakan Aksara Patah untuk Membetulkan UTF-8:

Untuk menyelesaikan isu ini, satu cara yang berkesan pendekatan melibatkan proses pembuangan dan import semula pangkalan data MySQL. Kaedah ini membenarkan penukaran aksara yang rosak kepada perwakilan UTF-8 yang betul.

Pembetulan Langkah demi Langkah:

1. Dump the MySQL database using the following command:

mysqldump -h DB_HOST -u DB_USER -p DB_PASSWORD --opt --quote-names \
--skip-set-charset --default-character-set=latin1 DB_NAME > DB_NAME-dump.sql

2. Import the dumped data back into a new database with the correct UTF-8 settings:

mysql -h DB_HOST -u DB_USER -p DB_PASSWORD \
--default-character-set=utf8 DB_NAME < DB_NAME-dump.sql
Salin selepas log masuk

Sumber:

Penyelesaian ini berdasarkan teknik yang diterangkan dalam:
http://blog.hno3.org/2010/04/22/fixing-double-encoded-utf-8-data-in-mysql/

Nota Tambahan:

  • Pastikan pengumpulan pangkalan data ditetapkan kepada utf8_general_ci.
  • Sahkan bahawa PHP menggunakan pengepala UTF-8 yang betul.
  • Gunakan editor teks yang menyokong UTF-8 tanpa BOM.
  • Walaupun bukan semua contoh aksara beraksen mungkin rosak, kaedah ini harus menangani kebanyakan kes.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan Pengekodan UTF-8 yang Rosak dalam Pangkalan Data MySQL Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan