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键在键盘的两侧都可用,以确保您可以触及它。请这样做。 –