我可以使用CSV选项导入CSV文件,但对于带有LOAD DATA的CSV不起作用

时间:2013-08-05 15:26:39

标签: mysql

我可以使用CSV选项导入CSV文件,但对于带有LOAD DATA的CSV不起作用。我收到了错误

Error: 1083 - Field separator argument is not what is expected

...虽然我正在做同样的事情,但是将同一个文件上传到同一张桌子。

1 个答案:

答案 0 :(得分:2)

您可能忘记将字段分隔符设置为逗号。以下是从MySQL documentation.

加载CSV文件的示例命令
  

LOAD DATA INFILE可用于读取从外部源获取的文件。例如,许多程序可以以逗号分隔值(CSV)格式导出数据,这样行的字段用逗号分隔并用双引号括起来,并带有一行初始的列名。如果此类文件中的行由回车符/换行符对终止,则此处显示的语句说明了用于加载文件的字段和行处理选项:

LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
  FIELDS TERMINATED BY ',' ENCLOSED BY '"'
  LINES TERMINATED BY '\r\n'
  IGNORE 1 LINES;

一些注意事项:

  • 如果您的第一行不包含标题,则应省略IGNORE 1 LINES
  • 如果您的字段没有用引号括起来,您也可以省略它。
  • 最后,如果您的文件是 在本地,您应该使用LOAD DATA LOCAL INFILE