你做错的是你试图将两个值连接成一个字符串,并将该字符串替换为你的单个字符串?
。如果您使用的是单个?
,需要传入一个对象,该对象的参数与数据库字段名相同。
我会这样做:
let payload = {
UsernameDB: data.RegUsername,
PasswordDB: data.Regpassword
};
connection.query("INSERT INTO Codify SET ?", payload, function(err, rows) {
});
您还可以使用数组而不是对象来执行此操作:
let sql = "INSERT INTO Codify (UsernameDB, PasswordDB) VALUES (?, ?)";
connection.query(sql, [ data.RegUsername, data.Regpassword ], function(err, rows) {
});
或者像这样:
let sql = "INSERT INTO Codify SET UsernameDB = ?, PasswordDB = ?";
connection.query(sql, [ data.RegUsername, data.Regpassword ], function(err, rows) {
});
但我发现使用一个?
与对象一起更具可读性。