首頁  >  文章  >  資料庫  >  如何將編碼為 UTF-8 的 Unicode 文字載入到 MySQL 表中?

如何將編碼為 UTF-8 的 Unicode 文字載入到 MySQL 表中?

Susan Sarandon
Susan Sarandon原創
2024-10-28 12:10:02605瀏覽

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

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

將包含以UTF-8 編碼的非英語字元的CSV 檔案中的匯入資料到MySQL表中,必須採取特定步驟來確保正確的字元處理。

字元集配置:

在載入資料之前,必須設定對應列的字元集表中的 utf8。這可確保列可以儲存 UTF-8 編碼的資料。

使用LOAD DATA INFILE 載入資料:

使用以下語法LOAD DATA INFILE 指令載入the 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>
  • CHARACTER SET UTF8: 指定資料以UTF-8 編碼
  • IGNORE: 跳過因字元編碼問題而無法正確載入的任何行
  • 由「;」終止的欄位:如果您的檔案使用不同的分隔符號來分隔列,請將其變更為適當的分隔符號
  • OPTIONALLY ENCLOSED BY '"' :如果您的資料包含需要引用的特殊字符,請使用此

LINES TERMINATED BY 'n':修改為反映CSV 檔案中的行結束符

<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>
範例:

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

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