Javascript 如何找到mysql node.js中抛出的错误的确切名称

Javascript 如何找到mysql node.js中抛出的错误的确切名称,javascript,mysql,node.js,express,Javascript,Mysql,Node.js,Express,我正在用node.js(express)和mysql felix构建一个服务器 我的问题是,有时我有一个查询,将返回一个重复的错误 我已经尽了全力试图抓住这个错误,但运气不好,程序崩溃了 这是我的代码: this.addReservation = function(req, res, next) { var json = JSON.parse(req.body['reservation']); var post = {user1: json.player1, user2

我正在用node.js(express)和mysql felix构建一个服务器

我的问题是,有时我有一个查询,将返回一个重复的错误

我已经尽了全力试图抓住这个错误,但运气不好,程序崩溃了

这是我的代码:

 this.addReservation = function(req, res, next) {
      var json = JSON.parse(req.body['reservation']);
      var post = {user1: json.player1, user2: json.player2, courtId: json.id, hour: json.hour, date: json.date};
      var giveback = {u1_first: req.user.firstName, u1_last: req.user.lastName, user1: json.player1, user2: json.player2};

      connection.query('insert into ordering set ?', post, function(err, result){
          if (err){ 
                throw err;
                return res.send(500);
            }
            else 
                return res.json({res: giveback})
                //return res.send(200);            
      });   
  };
现在我已经尝试用try-and-catch包装这个查询。没有帮助

我试图进入这一行:

connection.on('error',function(){console.log();})也没有帮助

我试着把这条线放在其他地方,但还是没用

在我的控制台中抛出的错误是:
错误:ER\u DUP\u ENTRY

我做错了什么?我是否应该在“错误”以外的内容上使用“开”

唯一帮助我的是:

process.on('uncaughtException', function(err) {
    // handle the error safely
    console.log(err);
});
但这是非常糟糕的,因为我知道错误的原因,我希望处理它,所以这对我来说是一个非常糟糕的解决方案


请帮帮我,谢谢。我正在使用mysql felix库。

检查连接。查询('USE name_of the_db_of the_not_exist',函数(err,rows){console.log(err.code);//'ER_BAD_db_ERROR');我读过这篇文章,但我仍然不明白为什么我的程序会出错
this.addReservation = function(req, res, next) {
  var json = JSON.parse(req.body['reservation']);
  var post = {user1: json.player1, user2: json.player2, courtId: json.id, hour: json.hour, date: json.date};
  var giveback = {u1_first: req.user.firstName, u1_last: req.user.lastName, user1: json.player1, user2: json.player2};

  connection.query('insert into ordering set ?', post, function(err, result){
      if (err){ 

            console.log('exact name of error thrown '+err);
            return res.send(500);
        }
        else 
            return res.json({res: giveback})
            //return res.send(200);            
  });   
};