【发布时间】:2022-12-19 16:43:47
【问题描述】:
我试着接触数据库 mysql 和 nodejs。在学习过程中,我遇到了脚本语法错误,我不知道如何修复语法。
var express = require('express');
var router = express.Router();
var db=require('../database');
router.get('/form', function(req, res, next) {
res.render('users');
});
router.post('/create', function(req, res, next) {
// store all the user input data
const userDetails=req.body;
// insert user data into users table
var sql = 'INSERT INTO users SET ?';
db.query(sql, userDetails,function (err, data) {
if (err) throw err;
console.log("User dat is inserted successfully ");
});
res.redirect('/users/form'); // redirect to user form page after inserting the data
});
module.exports = router;
这是错误:
code: 'ER_PARSE_ERROR',
errno: 1064,
sqlMessage: "You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near '?' at line 1",
sqlState: '42000',
index: 0,
sql: 'INSERT INTO users SET ?'
以供参考: 我从link 学习这段代码
【问题讨论】:
-
感谢@Amadan 的回复,所以就我而言,用户表中有 5 列。我应该如何编写语法?该列由 id、全名、电子邮件地址、城市和国家/地区组成。
标签: javascript mysql node.js