将错误errno从SQL查询返回到变量

时间:2018-07-04 16:55:30

标签: mysql node.js error-handling discord.js

我试图从SQL查询错误返回错误errno。
基本上,如果SQL查询失败:

  1. 将查询中的错误代码返回到insertData函数内部的var(例如, geterrorno
  2. geterrorno 返回到insert_status变量。

插入数据功能

function insertData(userid,name,server) {
 // SQL Query
 var sql = `INSERT INTO users (userid, name, server) VALUES ('${userid}', '${userName}', '${serverID}')`;
 // Store error code
 var geterrorno = 0;
 con.query(sql, function (err, result) {
     var errno = 0;
     //if(err) throw err //  throw err; // Rethrow non-MySQL errors
     if(err){ // if error
         if(err.errno == 1062){
             errno = err.errno;
             console.log(err);
             console.log(errno)
         }
         else {
             errno = err.errno;
         }
         return errno;
     }
     return errno;
     //if (err == 1062) console.log("DUPLICATE KEY!!")
 });
//return geterrorno;
}

bot.on代码(discord.js)

bot.on("message", async message => {
...
   var insert_status = insertData(pUserID,pUserName,pUserServer) //error code
   console.log(insert_status)
   // If insert_status != 0, alert user
...

我使用相同的用户ID进行测试,因此出现错误1062

Error: ER_DUP_ENTRY: Duplicate entry '88447121' for key 'userid'

我如何从con.query(sql, function (err, result) { ... }中获取价值

0 个答案:

没有答案