如何在nodejs中显示错误细节

来自nodejs的示例控制台输出,我可以访问,

error.code error.errno error.sqlState error.index 

但如何访问这个string,它表示“ Column 'name' cannot be null

在这里输入图像说明

要获得可打印的信息,您可以使用

 error.toString(); 

或者为了得到实际的消息,

 error.message; 

文件

error.message会做的伎俩

如果你的error.message = "ER_BAD_NULL_ERROR: Column 'name'不能为空”,你只对“列名”感兴趣不能为空“你可以创build自己的自定义错误类(对于这个特定的SQL错误)只返回冒号的后面部分。 这个逻辑可能会有点蹊跷

 if(error.sqlState !== undefined){ // only do it for sql error throw new CustomSqlError(error); } 

和类似的东西

 function CustomSqlError(err){ if(err && (err.sqlState!== undefined)){ this.err = err; } } util.inherits(CustomSqlError, Error); // needs require("util"); CustomSqlError.prototype.getMsgWithutSQlCode = function(){ if(typeof this.message == "string"){ return (this.message.split(":"))[1].trim(); } }