Mysql 我在本地内嵌导入时遇到语法错误

Mysql 我在本地内嵌导入时遇到语法错误,mysql,csv,Mysql,Csv,我正在尝试使用本地CSV文件在MySQL中进行更新,我确信我的语法应该是正确的,但我显然遗漏了一些东西,因为MySQL告诉我: 您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 “字段以”“结尾”“以”“结尾”(ArtikerNummer,标签) 第3行的“终点线” 我使用的代码如下所示: CREATE TEMPORARY TABLE TempTable LIKE Assortiment; LOAD DATA LOCAL INFILE 'C:\\Users\

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

您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 “字段以”“结尾”“以”“结尾”(ArtikerNummer,标签) 第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。

()
中的列列表紧跟在
字段/行
子句之后。可能重复的-,这个月早些时候的问题有完全相同类型的语法错误,在语句中的错误位置命名列。你在哪里(可能是另一个问题的作者)学习错误的语法?手册或某个web教程中是否有错误?@BillKarwin你对副本的看法是正确的,Michael Berkowski对我做错了什么的看法是正确的。我没有从错误的手册中得到答案,而是从stackoverflow上得到答案:这向我展示了如何进行导入,但因为我还需要指定行te终止我不知何故错误地认为列规范应该在那之前。不知何故,我被文档和更简单的示例弄糊涂了。我想我有点太累了。对不起,我应该仔细看一下手册!你的错误是自然的,因为
加载数据填充
的语法中有一个
INTO
子句,就像
INSERT
。在
INSERT
的语法中,列紧跟在table子句之后,但由于某种原因
LOAD DATA infle
将columns子句放在语法中的后面。如图所示!