Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Mengekalkan Pemformatan Jadual dalam MySQL dengan Pengekodan Aksara UTF8?

Bagaimana untuk Mengekalkan Pemformatan Jadual dalam MySQL dengan Pengekodan Aksara UTF8?

DDD
DDDasal
2024-10-30 17:45:30921semak imbas

How to Preserve Table Formatting in MySQL with UTF8 Character Encoding?

Meningkatkan Pemformatan Baris Perintah MySQL dengan Pengekodan Aksara UTF8

Semasa bekerja dengan rentetan Sweden dan Norway yang disimpan dalam jadual pangkalan data, anda mungkin menghadapi masalah dengan pemformatan jadual apabila menanyakan data menggunakan set aksara yang berbeza.

Pernyataan Masalah

Secara lalai, menggunakan "set names latin1;" menghasilkan output yang herot:

+-----------------------------------+
| name                              |
+-----------------------------------+
| Kid Interi#####                   | 
| Bwg Homes                         | 
| If Skadef####kring                | 
| Jangaard Export                   | 
| Nordisk Film                      | 
+-----------------------------------+

Bertukar kepada "tetapkan nama utf8;" memaparkan aksara dengan betul, tetapi mengganggu pemformatan jadual:

+-----------------------------------+
| name                              |
+-----------------------------------+
| Kid Interiør                     | 
| Bwg Homes                         | 
| If Skadeförsäkring              | 
| Jangaard Export                   | 
| Nordisk Film                      | 
+-----------------------------------+

Penyelesaian

Untuk mengekalkan pemformatan jadual semasa menggunakan pengekodan aksara UTF8, anda boleh memulakan klien MySQL dengan "--default- character-set=utf8" pilihan:

mysql --default-character-set=utf8

Anda juga boleh mengkonfigurasi ini sebagai tetapan lalai dalam fail "/etc/mysql/my.cnf":

[mysql]
default-character-set=utf8

Ini menetapkan pembolehubah konfigurasi character_set_client, character_set_connection dan character_set_results kepada utf8.

Jika isu pemformatan berterusan, pastikan pangkalan data, jadual dan lajur juga ditetapkan kepada utf8 menggunakan arahan berikut:

SHOW VARIABLES LIKE '%CHAR%';
SET character-set-server = utf8;

Selain itu, semak sebarang aksara Unicode yang mungkin ditulis dengan sambungan latin1. Untuk menyelesaikan masalah ini, sambungkan ke pangkalan data dengan set charset yang sama seperti nilai yang ditulis, atau dapatkan dan tulis semulanya menggunakan pengekodan yang betul.

Nota: Pengekodan utf8 MySQL bukanlah Unicode yang lengkap pelaksanaan. Pertimbangkan untuk menggunakan set aksara utf8mb4 untuk pelaksanaan UTF-8 yang sebenar:

mysql --default-character-set=utf8mb4

Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Pemformatan Jadual dalam MySQL dengan Pengekodan Aksara UTF8?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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