【发布时间】:2018-08-29 08:49:39
【问题描述】:
我正在尝试在 nodejs 中使用 mysql 插入 values。我已经编写了以下代码并通过 npm 安装了 MySQL 支持,但由于这个问题无法插入表。
我的代码;
var mysql = require('mysql');
var values=randomValueHex(8);
var sql = "INSERT INTO `activationkeys`(`activationKey`, `productId`)
VALUES ( values ,'3')";
con.query(sql, function (err, result) {
if (err) throw err;
console.log("1 record inserted");
});
我在终端上的错误:
错误:ER_PARSE_ERROR:您的 SQL 语法有错误;查看与您的 MySQL 服务器版本相对应的手册,了解在 ''3')' 附近使用的正确语法
我该如何解决这个问题?
【问题讨论】:
-
您的 SQL 查询无效。 dev.mysql.com/doc/refman/5.7/en/insert.html
-
在错误处理之前执行 console.log(this.sql) 并在日志中查看正在执行的查询是什么
-
values是 MySQL 关键字。您可能想要sql = "... VALUES(" + values + ", '3')",但您最好使用准备好的语句。在当前状态下,您的代码容易受到 SQL 注入的攻击。 -
我总是使用
sequelize在节点中处理数据库:docs.sequelizejs.com - 试试看:)
标签: javascript mysql node.js npm