首頁 >資料庫 >mysql教程 >使用 LOAD DATA INFILE 匯入資料時如何將 CSV 欄位對應到 MySQL 表格列?

使用 LOAD DATA INFILE 匯入資料時如何將 CSV 欄位對應到 MySQL 表格列?

Susan Sarandon
Susan Sarandon原創
2024-12-18 15:53:19132瀏覽

How Do I Map CSV Columns to MySQL Table Columns During Data Import using LOAD DATA INFILE?

在資料匯入期間將CSV 中的資料列指派給MySQL 表格列

使用LOAD DATA INFILE 指令將資料從CSV 檔案匯入SQL時,必須將文件中的列順序與MySQL 表中的相應列對齊,以實現準確的資料放置。要自動實現此對齊:

具有列映射的LOAD DATA INFILE 語法:

LOAD DATA INFILE 命令支援FIELDS 子句,該子句允許您指定其中的順序CSV 檔案中的欄位應指派給MySQL 表格列。文法如下:

LOAD DATA LOCAL INFILE 'abc.csv' INTO TABLE abc
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES
(col1, col2, col3, col4, col5...);

範例:

假設您有 CSV 文件,其中的列順序為:姓名、年齡、地址。您希望將資料匯入包含以下列的 MySQL 表中:年齡、姓名、地址。您可以使用下列查詢:

LOAD DATA LOCAL INFILE 'abc.csv' INTO TABLE abc
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES
(age, name, address);

此查詢將根據 FIELDS 子句中指定的順序自動將 CSV 檔案中的欄位指派給 MySQL 表中的正確欄位。

MySQL 8.0 使用者註意事項:

上述語法中的 LOCAL 關鍵字具有安全隱患。在 MySQL 8.0 中,LOCAL 預設為 False。如果您遇到與此相關的錯誤,您可以依照 MySQL 文件中的說明停用 LOCAL 功能或確認安全風險。

以上是使用 LOAD DATA INFILE 匯入資料時如何將 CSV 欄位對應到 MySQL 表格列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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