LOAD INFILE语法错误

时间:2015-02-01 00:23:41

标签: mysql syntax

我一直在用不同的方式尝试这个,有人能发现语法错误吗?

LOAD DATA INFILE '/tmp/projects.csv' INTO TABLE 'projects' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (test, test2, test3, test4, test5, test6, test7, test8, test9, test10, test11, test12, test13, test14, test15, test16, test17, test18, test19, test20, test21, test22, test23);

我用“测试”一词替换了列的名称,它们基本上是project_name,project_author等等。

1 个答案:

答案 0 :(得分:0)

根据评论中的讨论,您有两个问题:

  1. 有一些看不见的角色带来一团糟
  2. 标识符(表名,列名等)必须在后面或后面没有任何引号
  3. 从第1项开始,我是如何检测到的:mysql解析器以查询中无法解析的位置开头。一旦您的错误消息包含完整的查询但查询的开头看起来有效 - 唯一的解释是,在查询中存在我们看不到的其他内容。

    关于如何对mysql语法错误做出反应的更通用的建议:

    只需检查解析器错误指向的位置,包括之前和之后的几个字符。如果你看不到任何可疑的东西,并且根据文档的语法是否正确 - 尝试再次手动重新键入它,特别是如果你从某个地方复制它。