問題:從我的倉庫收到的CSV數據有超過200萬個數字,我需要導入[多欄]表中的[單列]。我需要弄清楚如何將CSV文件導入到MySQL中,但有一些棘手的問題需要克服。經過一番研究,我還沒有找到一個解決辦法...海量CSV到MySQL導入問題
列可以被佈置爲這樣的:(此數據不存在於數據庫中還)
- ID:自動遞增值
- serialCode:值從CSV得到
somethingID:分配給另一表ID值
ID | serialCode | somethingID -------------------------------- 1 | 1234567 | 42 2 | 2345678 | 21 3 | 3456789 | 14
在下面的示例格式中有200萬個序列號。每個數字都是一個單獨的serialCode,用逗號分隔,並在一行中包含4個serialCodes。
7121316,8216697,5146909,5191409,
8125250,6217542,5144896,8198066,
3125654,9217139,2146880,1192013
我需要做的就是插入這些串行代碼到MySQL數據庫,具體到只有serialCode列。 ID將自動增加,someID將在以後分配。
幾個問題的答案。首先,我收到一條錯誤消息:**'字段列表'中的未知列'serialCode'**但該列是真正命名的,包括區分大小寫的字母。其次,我相信您提供的代碼會有問題,因爲字段可能需要以「,」結尾。這是我的代碼:'$ loadsql ='LOAD DATA INFILE「'。$ csvfile。'」INTO TABLE'。$ table。' 「\ n」(serialCode)SET ID = NULL;' – MrFoobar 2011-05-04 18:26:34
btw ...我試過你的代碼,它給出了我上面提到的錯誤信息。 – MrFoobar 2011-05-04 18:30:17
得到它的工作!這裏是正確的代碼'$ loadsql =「LOAD DATA INFILE'」。$ csvfile。「'INTO TABLE」。$ table。「FIELDS TERMINATED BY','LINES TERMINATED BY'\ r \ n'(serialcode)SET id = NULL ;「;' – MrFoobar 2011-05-04 18:40:06