Rumah pangkalan data tutorial mysql Mengapakah aksara Arab saya ditunjukkan sebagai tanda soal dalam pangkalan data MySQL saya?

Mengapakah aksara Arab saya ditunjukkan sebagai tanda soal dalam pangkalan data MySQL saya?

Dec 08, 2024 pm 07:46 PM

Why are my Arabic characters showing as question marks in my MySQL database?

Menyimpan Data Arab dalam Pangkalan Data MySQL

Isu: Apabila cuba memasukkan teks Arab ke dalam pangkalan data MySQL, teks muncul sebagai soalan markah.

Diagnosis:

Isu timbul apabila pangkalan data, jadual atau set aksara lajur dan penyusunan tidak ditetapkan untuk menyokong aksara Arab. Secara lalai, MySQL menggunakan set aksara Latin1, yang tidak termasuk aksara Arab.

Penyelesaian:

Untuk menyelesaikan isu ini, adalah penting untuk memastikan pangkalan data , jadual dan lajur dikonfigurasikan dengan set aksara dan penyusunan yang sesuai untuk bahasa Arab data.

Langkah:

  1. Semak set aksara dan pengumpulan pangkalan data, jadual dan lajur:

    • Untuk pangkalan data:

      SELECT default_character_set_name FROM information_schema.SCHEMATA WHERE schema_name = "your_database_name";
      Salin selepas log masuk
    • Untuk jadual:

      SELECT CCSA.character_set_name FROM information_schema.`TABLES` T, information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA
      WHERE CCSA.collation_name = T.table_collation AND T.table_schema = "your_database_name" AND T.table_name = "your_table_name";
      Salin selepas log masuk
    • Untuk lajur:

      SELECT character_set_name FROM information_schema.`COLUMNS` C
      WHERE table_schema = "your_database_name" AND table_name = "your_table_name" AND column_name = "your_column_name";
      Salin selepas log masuk
  2. Tetapkan set aksara dan penyusunan kepada utf8 dan utf8_general_ci:

    • Untuk pangkalan data:

      ALTER DATABASE your_database_name CHARACTER SET utf8 COLLATE utf8_general_ci;
      Salin selepas log masuk
    • Untuk jadual:

      ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
      Salin selepas log masuk
    • Untuk lajur:

      ALTER TABLE your_table_name MODIFY your_column_name VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci;
      Salin selepas log masuk
  3. Secara manual masukkan data Arab ke dalam pangkalan data:

    • Gunakan editor seperti phpMyAdmin atau SQLyog yang menyokong pengekodan aksara UTF-8.
    • Semak set aksara dan pengumpulan untuk editor anda dan pangkalan data ditetapkan kepada utf8_general_ci.
    • Masukkan aksara Arab terus ke dalam medan teks antara muka pangkalan data.

Dengan memastikan bahawa pangkalan data, jadual, dan set aksara lajur dan penyusunan ditetapkan untuk menyokong aksara Arab, anda boleh berjaya menyimpan dan mendapatkan semula data Arab dalam MySQL anda pangkalan data.

Atas ialah kandungan terperinci Mengapakah aksara Arab saya ditunjukkan sebagai tanda soal 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

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Kurangkan penggunaan memori MySQL di Docker Kurangkan penggunaan memori MySQL di Docker Mar 04, 2025 pm 03:52 PM

Kurangkan penggunaan memori MySQL di Docker

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Mar 19, 2025 pm 03:51 PM

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table?

Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama Mar 04, 2025 pm 04:01 PM

Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama

Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin) Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin) Mar 04, 2025 pm 03:54 PM

Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin)

Apa itu SQLite? Gambaran Keseluruhan Komprehensif Apa itu SQLite? Gambaran Keseluruhan Komprehensif Mar 04, 2025 pm 03:55 PM

Apa itu SQLite? Gambaran Keseluruhan Komprehensif

Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah Mar 04, 2025 pm 03:49 PM

Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah

Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)? Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)? Mar 18, 2025 pm 12:00 PM

Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)?

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Mar 18, 2025 pm 12:01 PM

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL?

See all articles