最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

从js运行时插入错误,xampp shell在相同的sql上工作正常

网站源码admin14浏览0评论

从js运行时插入错误,xampp shell在相同的sql上工作正常

从js运行时插入错误,xampp shell在相同的sql上工作正常

这里是SQL im试图运行,当我使用xampp时,我能够获得响应以插入我的表。但是,如果我将sql传递到查询函数中,则无法获取要插入到表中的查询。而我却收到以下错误:

START TRANSACTION;
INSERT INTO address_tbl (address_ln_1, address_ln_2, address_town, address_county, address_postcode) VALUES ('place', '', 'Town', 'county', 'postcode');
SELECT LAST_INSERT_ID();
COMMIT;

使用js:

var query= function (sql){
    return new Promise(resolve => {
        con.query(sql, (err, result) => {
            if(err) throw err;
                resolve(result);
        });
    });
}

错误:

C:\node_modules\mysql\lib\protocol\Parser.js:437
      throw err; // Rethrow non-MySQL errors
      ^

Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'INSERT INTO address_tbl (address_ln_1, address_ln_2, address_town, address_count' at line 1
    at Query.Sequence._packetToError (C:\node_modules\mysql\lib\protocol\sequences\Sequence.js:47:14)
    at Query.ErrorPacket (C:\node_modules\mysql\lib\protocol\sequences\Query.js:77:18)
    at Protocol._parsePacket (C:\node_modules\mysql\lib\protocol\Protocol.js:291:23)
    at Parser._parsePacket (C:\node_modules\mysql\lib\protocol\Parser.js:433:10)
    at Parser.write (C:\node_modules\mysql\lib\protocol\Parser.js:43:10)
    at Protocol.write (C:\node_modules\mysql\lib\protocol\Protocol.js:38:16)
    at Socket.<anonymous> (C:\node_modules\mysql\lib\Connection.js:91:28)
    at Socket.<anonymous> (C:\node_modules\mysql\lib\Connection.js:525:10)
    at Socket.emit (events.js:198:13)
    at addChunk (_stream_readable.js:288:12)
    --------------------
    at Protocol._enqueue (C:\node_modules\mysql\lib\protocol\Protocol.js:144:48)
    at Connection.query (C:\node_modules\mysql\lib\Connection.js:201:25)
    at resolve (C:\db.js:18:13)
    at new Promise (<anonymous>)
    at Object.query (C:\db.js:17:12)
    at insert (C:\utl\order_model.js:16:8)
    at Order.insert (C:\utl\order_model.js:99:9)
    at utill.calculate_cart (C:\routes\orderRouter.js:65:15)
    at pm.getProducts.productlist (C:\utl\utill.js:22:9)
    at Object.getProducts (C:\utl\products_model.js:27:9)
[nodemon] app crashed - waiting for file changes before starting...

回答如下:

所以只读取错误消息并与上面的(有效的)查询进行比较:

Working:         INSERT INTO address_tbl (address_ln_1, address_ln_2, address_town, address_county, address_postcode) VALUES ('place', '', 'Town', 'county', 'postcode');

Error Message:  'INSERT INTO address_tbl (address_ln_1, address_ln_2, address_town, address_count'

您缺少表插入的某些参数。我会看看为什么会这样。

发布评论

评论列表(0)

  1. 暂无评论