0
我正在用node.js(express)和mysql felix構建一個服務器。如何找出mysql中引發錯誤的確切名稱node.js
我的問題是,有時我有一個查詢將返回一個重複的錯誤。
我已經嘗試了一切,試圖抓住這個錯誤,但沒有運氣,程序崩潰。
這是我的代碼:
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和catch。沒有幫助。
我試圖進入該行:
connection.on('error', function() {console.log();});
沒有幫助也沒有。
我試圖把這條線在其他地方仍然沒有幫助。
在我的控制檯中拋出的錯誤是:Error: ER_DUP_ENTRY
。
我在做什麼錯?我應該在「錯誤」之外使用「on」嗎?
,只有一件事情讓我的是:
process.on('uncaughtException', function(err) {
// handle the error safely
console.log(err);
});
但是這是非常糟糕的,因爲我不知道這是造成錯誤,我希望來對付它,所以這是對我來說是非常糟糕的解決方案。
請幫助我謝謝。我正在使用mysql felix庫。
檢查https://github.com/felixge/node-mysql#error-handling connection.query( 'USE name_of_db_that_does_not_exist',函數(ERR,行){ 的console.log(err.code) ; //'ER_BAD_DB_ERROR' }); – Damodaran
我已經閱讀過這篇文章,但是我仍然不明白爲什麼我的程序會創作 – lobengula3rd