我在本地infile导入时遇到语法错误

时间:2013-11-29 21:43:55

标签: mysql csv

我正在尝试使用本地CSV文件在MySQL中进行更新,我确信我的语法应该是正确的,但是由于MySQL告诉我,我显然遗漏了一些东西:

  

您的SQL语法有错误;检查手册   对应于您的MySQL服务器版本,以便使用正确的语法   靠近'FIELDS TERMINATED BY',''enclOSED BY''''(ArtikelNummer,Tags)   LINES TERMINA'在第3行

我使用的代码如下:

CREATE TEMPORARY TABLE TempTable LIKE Assortiment;

LOAD DATA  LOCAL INFILE 'C:\\Users\\Website\\website data\\stock.csv'
    INTO TABLE TempTable ( ArtikelNo, Tags )
    FIELDS TERMINATED BY ','
           ENCLOSED BY '"'
    LINES TERMINATED BY '\r\n';

UPDATE assortiment
    INNER JOIN TempTable
         ON TempTable.ArtikelNo = assortiment.ArtikelNo
         SET assortiment.Tags = TempTable.Tags;

DROP TEMPORARY TABLE TempTable; 

目标表使用了很多列,csv文件只有2个

我认为错误出现在列规范(ArtikelNo,Tags)中,因为当我离开它时,不再有语法错误(只有错误的映射)。我尝试将它放在不同的位置,确保列名称正确,但这没有帮助。

显然,解决方法是确保CSV列的顺序正确,并在需要时放入一些虚拟列,但我想找出出错的原因。

我正在使用MySQL查询浏览器,版本5.1.11,使用服务器版本5.5.20。

0 个答案:

没有答案