【问题标题】:Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version错误:ER_PARSE_ERROR:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册
【发布时间】:2016-11-09 09:49:29
【问题描述】:

我正在尝试使用从 NPM 下载的“mysql”模块将一些数据从 Node JS 发送到 MySQL。

connection.beginTransaction(function(err) {
        if (err) { throw err }
        connection.query(sq, function (error, result) {
              if (error) {
            //return connection.rollback(function() {
            throw err
          //})
          } else {
            console.log('data is inserted ... ' + new Date())
          }
        })

我的查询,即 sq 是这样的......

INSERT INTO archlb_sales(fiscalYear, fiscalQuarterID, fiscalPeriodID, fiscalWeekID, geo, theater, area, operation, region, country, salesAgen
tName, emailID, arch, technology, subTechnology, tms3, productFamily, scms, totalSales, agentType, salesAgentnumber, softBookingsNet) values ('
2017', '2017Q1', '201701', '2017014', 'Americas', 'Americas-MISCL2', 'Americas-MISCL3', 'Americas-MISCL4', 'Americas-MISCL5', 'UNKNOWN', 'G2C A
djustment Agent', 'UNKNOWN' , 'Collaboration' , 'Collaboration','CLOUD SW' , 'CLD-AUDIO-SW' , 'CWAU', 'OTHER' , -205, 'TEAM AGENT', 'UNKNOWN' ,
 '1') ON DUPLICATE KEY UPDATE totalSales = totalSales + -205;

INSERT INTO archlb_sales(fiscalYear, fiscalQuarterID, fiscalPeriodID, fiscalWeekID, geo, theater, area, operation, region, country, sal
esAgentName, emailID, arch, technology, subTechnology, tms3, productFamily, scms, totalSales, agentType, salesAgentnumber, softBookingsNet) val
ues ('2017', '2017Q1', '201701', '2017014', 'Americas', 'Americas-MISCL2', 'Americas-MISCL3', 'Americas-MISCL4', 'Americas-MISCL5', 'UNKNOWN',
'G2C Adjustment Agent', 'UNKNOWN' , 'Collaboration' , 'Collaboration','CLOUD SW' , 'CLD-AUDIO-SW' , 'CWAUCC', 'OTHER' , -123, 'TEAM AGENT', 'UN
KNOWN' , '1') ON DUPLICATE KEY UPDATE totalSales = totalSales + -123;

这些变量的值是从文本文件中读取的,并且是正确的

MySQL 给出以下错误。

Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the ri
ght syntax to use near \'INSERT INTO archlb_sales(fiscalYear, fiscalQuarterID, fiscalPeriodID, fiscalWeek\' at line 3

这是表架构:

【问题讨论】:

  • 你能发布 archlb_sales 架构吗?您确定“fiscalWeekID”列是用这些大写字母严格定义的吗? (ID)
  • 你能发布“第 3 行”吗?确切地说,而不是“类似的东西”。
  • 也许您正在将字符串添加到整数字段中,或者根据列的数据类型出现错误..

标签: mysql node.js node-mysql


【解决方案1】:

您试图在一个查询中执行多个 SQL 语句,除非您明确设置 multipleStatements 选项,否则该查询将被禁用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-27
    • 2014-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-20
    • 1970-01-01
    相关资源
    最近更新 更多