2012-08-09 43 views
1

我試圖通過發出以下命令LOAD DATA INFILE mysql的空值輸入錯誤

load data infile "test.txt" into table m_c; 
到一個文本文件加載到現有的表

表有5列:ID,標題,官方,流派和平臺 其中id是設置了auto_increment的主鍵。

該文件已添加到表中,但內容不是。相反,我將NULL作爲所有列的值。

我真的需要知道爲什麼!

+0

如果您可以添加'SHOW CREATE TABLE your_table'的輸出以及文件中的幾行,那將是非常好的。 – 2012-08-09 17:38:41

+0

@ShlomiNoach這裏你有打印屏幕[IMG] http://i48.tinypic.com/11ky2jk.png [/ IMG] – 2012-08-09 17:42:20

+0

基於你提供的鏡頭,我建議你使用'varchar',除非這些字段會是'char'的定義長度。 – Kermit 2012-08-09 17:46:58

回答

0
LOAD DATA INFILE 'test.txt' 
    INTO TABLE m_c 
    (title, genre, platform, official) 
SET gameid = NULL; 

Reference

另外,如何在你的文件格式?製表符分隔? CSV?您可能需要文件或行結束符。

查看manual

+0

奇怪的是,它添加了文件的最後一項,其餘的爲空 – 2012-08-09 17:47:11

+0

@JHove,你的輸入文件是如何格式化的? – Kermit 2012-08-09 17:49:22

+0

另外,A,P,X,W,2014 – 2012-08-09 18:17:23

0

您的文本文件中不需要ID字段,系統會自動爲您插入的每一行提供一個新的ID。

+0

從文本文件中獲取ID不會導致錯誤。 – 2012-08-09 17:39:20

+0

所以如果我改變id或刪除它,它不會解決它? – 2012-08-09 17:41:09

+0

我不知道 - 因爲我不知道你在文中有什麼。但我正在評論瑞安E,他的答案不會自動適用於此。 – 2012-08-10 06:27:22