首頁 >資料庫 >mysql教程 >如何使用 Python 將 UTF-8 編碼文字載入到 MySQL 表中?

如何使用 Python 將 UTF-8 編碼文字載入到 MySQL 表中?

Patricia Arquette
Patricia Arquette原創
2024-10-30 04:49:02704瀏覽

How to Load UTF-8 Encoded Text into a MySQL Table Using Python?

將UTF-8 編碼文字載入到MySQL 表中

在要載入到MySQL 表的CSV 檔案中遇到非英文字元時,確保正確處理字元編碼至關重要。當存在非 ASCII 字元時,這一點變得尤為重要,因為它們的表示形式可能會根據所選編碼的不同而有所不同。

在您的情況下,單獨將對應表列的字元集設為 UTF-8 可能不會足夠了。為了確保在資料載入期間準確保留非英文字符,必須在 LOAD DATA LOCAL INFILE 命令期間明確指定字符集。

對於 Python,可以採用以下方法:

<code class="python">import MySQLdb

# Connect to the database
db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="database_name")
cursor = db.cursor()

# Prepare the LOAD DATA statement
stmt = ("LOAD DATA INFILE 'file' "
        "IGNORE INTO TABLE table "
        "CHARACTER SET UTF8 "
        "FIELDS TERMINATED BY ';' "
        "OPTIONALLY ENCLOSED BY '"' "
        "LINES TERMINATED BY '\n'")

# Execute the statement
cursor.execute(stmt)

# Commit the changes
db.commit()</code>

透過在語句中明確指定 CHARACTER SET UTF8,MySQL 將被指示將資料解釋為 UTF-8 編碼。這可以確保非英語字元在表中正確表示和存儲,即使它們包含 ASCII 範圍之外的字元。

以上是如何使用 Python 將 UTF-8 編碼文字載入到 MySQL 表中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn