Rumah > Artikel > pangkalan data > Analisis dan penyelesaian kepada masalah bercelaru Cina data MySQL
Dalam aplikasi pangkalan data harian, kami sering menghadapi masalah aksara Cina MySQL yang kacau. Masalah ini secara amnya nampaknya disebabkan tetapan set aksara lalai bagi pangkalan data MySQL adalah tidak betul, mengakibatkan ketidakupayaan untuk memaparkan aksara Cina dengan betul apabila memasukkan atau memaparkannya. Mari kita analisa punca aksara Cina MySQL bercelaru dan cara menyelesaikannya.
1. Masalah
Aksara bercelaru MySQL biasanya muncul seperti berikut:
1 Semasa mengendalikan pangkalan data MySQL, jika terdapat aksara Cina dalam data yang dimasukkan, bahasa Cina watak-watak akan Menjadi omong kosong.
2. Apabila data diambil daripada pangkalan data, aksara Cina juga akan bercelaru.
Jika situasi di atas berlaku, adalah jelas bahawa tetapan set aksara MySQL adalah tidak betul.
2. Punca masalah
Set aksara Cina MySQL tidak ditetapkan dengan betul semasa mencipta jadual, mengakibatkan aksara bercelaru dalam kedua-dua aksara sisipan dan pertanyaan.
Kemudian kita boleh menyediakannya dengan beberapa kaedah mudah.
3. Penyelesaian
1 Ubah suai set aksara lalai MySQL
Kaedah untuk mengubah suai set aksara lalai MySQL adalah agak mudah:
1) Cari fail Konfigurasi MySQL my.ini atau my.cnf
C:Program FilesMySQLMySQL Server 5.6my.ini
/etc /my. cnf
2) Ubah suai semua set aksara dalam fail konfigurasi kepada utf8 seperti berikut:
[client]
default-character-set=utf8
[mysql]
set-karakter-lalai=utf8
[mysqld]
enjin-penyimpanan-lalai = INNODB
pelayan-set aksara = utf8
pelayan-pengumpulan = utf8_general
3) Mulakan semula perkhidmatan MySQL
2 Ubah suai set aksara pangkalan data dan jadual
Anda boleh menentukan set aksara semasa mencipta pangkalan data dan jadual, atau anda. boleh menggunakan pernyataan alter selepas penciptaan Pengubahsuaian:
1) Tentukan set aksara semasa mencipta pangkalan data
CIPTA PANGKALAN DATA db_name SET CHARACTER utf8 COLLATE utf8_general_ci;
2) Nyatakan set aksara semasa mencipta jadual
BUAT JADUAL t1 (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) CHARACTER SET utf8 COLLATE utf8_general_ci
);
3) Ubah suai set aksara jadual
UBAH JADUAL t1 TUKAR KE SET KARAKTER utf8 COLLATE utf8_general_ci;
4 Ringkasan
Masalah bercelaru MySQL MySQL adalah masalah yang agak biasa, tetapi sebenarnya agak mudah untuk menyelesaikannya selepas mencari puncanya. Selagi set aksara MySQL ditetapkan dengan betul, masalah aksara Cina yang bercelaru dapat dielakkan. Semoga artikel ini bermanfaat kepada semua.
Atas ialah kandungan terperinci Analisis dan penyelesaian kepada masalah bercelaru Cina data MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!