首頁 > 資料庫 > mysql教程 > 如何從包含空白欄位的 CSV 檔案中正確載入具有 NULL 值的 MySQL 表?

如何從包含空白欄位的 CSV 檔案中正確載入具有 NULL 值的 MySQL 表?

Barbara Streisand
發布: 2024-12-26 12:00:19
原創
268 人瀏覽過

How to Properly Load MySQL Tables with NULL Values from CSV Files Containing Empty Fields?

從CSV 資料載入具有NULL 值的MySQL 表

將CSV 資料匯入My 資料表時,正確處理NULL 值至關重要保持資料完整性。考慮以下情況:

您有一個名為「moo」的表,其中包含多個數字列,所有列都允許 NULL 值。從 CSV 檔案載入資料時,您會遇到列中的空白欄位。然而,MySQL 不是用 NULL 填充這些字段,而是為它們分配零。在嘗試區分 NULL 和零時,這可能會導致資料不一致。

要解決此問題,請使用以下方法:

  1. 將空白欄位讀入局部變數。
  2. 檢查局部變數是否為空字串(相當於NULL)。
  3. 將實際表格欄位值設為如果局部變數為空字串,則為 NULL。

下面是一個範例語句:

LOAD DATA INFILE '/tmp/testdata.txt'
INTO TABLE moo
FIELDS TERMINATED BY ","
LINES TERMINATED BY "\n"
(one, two, three, @vfour, five)
SET four = NULLIF(@vfour,'')
;
登入後複製

在此語句中,第四個欄位(「four」)被讀入局部變數@vfour。如果 @vfour 包含空字串,則使用 NULLIF() 函數將表格中的第四個欄位設為 NULL。

如果有多列可能為空字段,則可以將它們全部讀入變數並使用多個 SET 語句來相應地處理 NULL 值。

以上是如何從包含空白欄位的 CSV 檔案中正確載入具有 NULL 值的 MySQL 表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板