MYSQL节点问题

时间:2019-03-18 04:46:27

标签: javascript mysql node.js web

运行下面的代码将引发MYSQL错误,我已经检查了语法,这似乎是正确的,但不确定为什么会引发错误。

app.post('/:roomname/create',function(request, response){
let roomID =  ""+request.params.roomname+"";
console.log(roomID);
let insertRoom = "INSERT INTO chatrooms (roomname) VALUES (?)";


conn.query(insertRoom,[roomID], function(error, result) {
  if (err) throw err;
console.log("1 record inserted");
});

错误:

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

ReferenceError:未定义err

2 个答案:

答案 0 :(得分:1)

您的处理错误名称和回调错误名称不相同! 您必须在回调和处理块中定义相同的错误名称。 请检查使用此代码段。使用此代码段后,如果发生任何错误,请在评论中告知我。

app.post('/:roomname/create',function(request, response){
let roomID =  ""+request.params.roomname+"";
console.log(roomID);
let insertRoom = "INSERT INTO chatrooms (roomname) VALUES (?)";


conn.query(insertRoom,[roomID], function(err, result) {
  if (err) throw err;
console.log("1 record inserted");
});

答案 1 :(得分:1)

conn.query(insertRoom,[roomID], function(error, result) {
  if (err) throw err;

在回调函数中,您正在编写“错误”,但在则中,如果您正在检查“ err”。在回调中将其更改为

conn.query(insertRoom,[roomID], function(err, result) {