將具有不同列名的CSV 檔案匯入MySQL
將CSV 檔案匯入MySQL 時,可能會遇到欄位名稱不同的情況CSV 檔案中的內容與資料庫表中的內容不同。這需要特定的方法來確保正確的資料映射。
載入資料 INFILE 語法
要將 CSV 檔案載入到 MySQL 表中,可以使用 LOAD DATA INFILE陳述。如果您未在語句末尾指定列列表,則輸入行應包含每個表列的欄位。
自訂列映射
但是,當CSV檔案中的列名與資料庫中的列名不同時,您可以指定自訂列列表,將輸入資料映射到正確的列。 LOAD DATA INFILE 語法可讓您指定將哪個 CSV 欄位匯入到哪個資料庫列。
例如,考慮以下CSV 文件,其中列名為「name」、「city」和「comments」:
<code class="csv">uniqName,uniqCity,uniqComments John,New York,Excellent programmer Jane,London,Great designer</code>
以下資料庫表,其中列名為「name」、 「location」和「skills」:
<code class="sql">CREATE TABLE tblUniq ( name VARCHAR(255), location VARCHAR(255), skills TEXT );</code>
將CSV 檔案匯入到具有正確欄位的表中對應時,可以使用下列LOAD DATA INFILE 語句:
<code class="sql">LOAD DATA LOCAL INFILE 'uniq.csv' INTO TABLE tblUniq FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' (name, location, skills);</code>
透過在語句末尾指定列列表(名稱、位置、技能),可確保「uniqName」列中的CSV 檔案匯入到資料庫中的「名稱」列,將「uniqCity」列匯入「位置」列,將「uniqComments」欄位匯入「技能」列。
此方法可讓您將具有不同列名的 CSV 檔案匯入 MySQL 表,確保資料正確映射,無需手動幹預。
以上是如何使用自訂列名將 CSV 檔案匯入 MySQL的詳細內容。更多資訊請關注PHP中文網其他相關文章!