0
在此處處理批量插入,該批量插入跳過2條記錄。下面說明:批量插入跳過輸入文件中的一個字段
My table (works fine, Auto-incrementing Job_Id):
create table avjobs (Job_Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
Job_Name varchar(255), Job_Seq varchar(255), Job_Date varchar(255),
Start_Time time, End_Time time, Runtime time, Status varchar(255));
這裏是我的csv文件:
JOB1A|0029|20140506|14:01:05|15:00:01|0:59:45|FINISHED
JOB2B|0030|20140506|15:01:05|16:00:01|0:59:55|INITIATED
這裏是我使用的BULK INSERT:
LOAD DATA LOCAL INFILE '/tmp/jobs.csv' INTO TABLE avjobs FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n';
Query OK, 3 rows affected, 9 warnings (0.00 sec)
這裏是選擇輸出:
mysql> select * from avjobs;
+--------+----------+----------+----------+------------+----------+----------+--------+
| Job_Id | Job_Name | Job_Seq | Job_Date | Start_Time | End_Time | Runtime | Status |
+--------+----------+----------+----------+------------+----------+----------+--------+
| 1 | 0029 | 20140506 | 14:01:05 | 15:00:01 | 00:23:55 | 00:00:00 | NULL |
| 2 | 0030 | 20140506 | 15:01:05 | 16:00:01 | 00:59:55 | 00:00:00 | NULL |
+--------+----------+----------+----------+------------+----------+----------+--------+
批量插入跳過,不知何故,工作名稱以及狀態。
你能告訴我在語法上有什麼問題嗎?
如果在csv的每行末尾加上一個'|'會發生什麼? –
可能有幫助:「如果您在Windows系統上生成了文本文件,則可能必須使用LINES TERMINATED BY'\ r \ n''才能正確讀取文件...」 - [dev.mysql.com ](http://dev.mysql.com/doc/refman/5.1/en/load-data.html) – showdev
請在提問時不要提出要求。這讓他們更難閱讀,這很煩人,它不會幫助你更快。 Shift鍵在鍵盤的兩側都可用,以確保您可以觸及它。請這樣做。 –