Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memuatkan Teks Unicode yang Dikodkan sebagai UTF-8 ke dalam Jadual MySQL?

Bagaimana untuk Memuatkan Teks Unicode yang Dikodkan sebagai UTF-8 ke dalam Jadual MySQL?

Susan Sarandon
Susan Sarandonasal
2024-10-28 12:10:02607semak imbas

How to Load Unicode Text Encoded as UTF-8 into a MySQL Table?

Memuatkan Teks Unikod Dikodkan sebagai UTF-8 ke dalam Jadual MySQL

Untuk mengimport data daripada fail CSV yang mengandungi aksara bukan Bahasa Inggeris yang dikodkan dalam UTF-8 ke dalam MySQL jadual, langkah khusus mesti diambil untuk memastikan pengendalian aksara yang betul.

Konfigurasi Set Aksara:

Sebelum memuatkan data, anda mesti menetapkan set aksara lajur yang sepadan dalam jadual ke utf8. Ini memastikan lajur boleh menyimpan data yang dikodkan UTF-8.

Pemuatan Data dengan LOAD DATA INFILE:

Gunakan sintaks berikut untuk arahan LOAD DATA INFILE untuk memuatkan data:

<code class="sql">LOAD DATA INFILE 'file'
IGNORE INTO TABLE table
CHARACTER SET UTF8
FIELDS TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'</code>
  • SET KARAKTER UTF8: Menentukan bahawa data dikodkan dalam UTF-8
  • ABAIKAN: Langkau mana-mana baris yang gagal dimuatkan dengan betul disebabkan isu pengekodan aksara
  • MEDAN DITAMATKAN OLEH ';': Tukar ini kepada pembatas yang sesuai jika fail anda menggunakan yang lain untuk mengasingkan lajur
  • PILIHAN DISERTAKAN OLEH '"': Gunakan ini jika data anda mengandungi aksara khas yang perlu dipetik
  • TALIAN DITAMATKAN OLEH 'n': Ubah suai kepada mencerminkan aksara penghujung baris dalam fail CSV anda

Contoh:

<code class="python">import MySQLdb

conn = MySQLdb.connect(host="localhost", user="user", passwd="password", db="database")
cursor = conn.cursor()

# Set the character set of the column
cursor.execute("ALTER TABLE table MODIFY COLUMN column_name VARCHAR(255) CHARACTER SET UTF8")

# Load the data using LOAD DATA INFILE
cursor.execute(
    """
    LOAD DATA INFILE '/path/to/file.csv'
    IGNORE INTO TABLE table
    CHARACTER SET UTF8
    FIELDS TERMINATED BY ';'
    OPTIONALLY ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
    """
)

conn.commit()</code>

Atas ialah kandungan terperinci Bagaimana untuk Memuatkan Teks Unicode yang Dikodkan sebagai UTF-8 ke dalam Jadual MySQL?. 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