我在将数据插入MySQL数据库时遇到问题。选择查询工作正常,所以我假设它是一些愚蠢的东西,我已经错过了,无论是在Express代码中,还是在我的HTML中。我运行查询的页面位于localhost:8080/add
,我正在尝试INSERT INTO
。这是我的代码:
的Javascript
app.get('/add', function(req, res) {
res.sendFile(path.join(__dirname + '/Views/add.htm'));
});
app.post('/add', function(req, res) {
var fName = req.body.fName;
var email = req.body.email;
var id = req.body.id;
var post = {id: id, user: fName, email: email};
console.log(post);//This holds the correct data
connection.query('INSERT INTO user VALUES ?', post, function(err, result) {
if (!err) {
console.log('Successfully added information.');
} else {
console.log('Was not able to add information to database.');
}
});
});
我的HTML只是一个提交按钮和3个输入字段,位于POST
方法表单中。再一次,我可以连接到数据库并使用select查询从中读取,我只是无法插入它。
答案 0 :(得分:0)
请查看此处的文档 https://github.com/mysqljs/mysql#escaping-query-values 。
connection.query('INSERT INTO posts SET ?', post, function(err, result) {
if (!err) {
console.log('Successfully added information.');
} else {
console.log(result);
console.log('Was not able to add information to database.');
}
});
有效的mysql语句是SET
而不是Values
。