您的位置:首页技术文章
文章详情页

javascript - node.js出现 mysql 查询异常,怎么处理?

浏览:94日期:2023-09-18 18:29:24

问题描述

基于express的框架,node-mysql模块开发项目,在项目中需要执行sql语句,如果sql语句异常,那么程序会直接崩溃。

conn.query(sql,function (err, result) {}如果这里的事情了因为前端提交方式的原因(或者是别人的非法提交),sql语句变为了SELECT * FROM prod WHERE prodName LIKE’%undefined%’ LIMIT NaN,10; 这样的话,node控制台会抛出:throw err; // Rethrow non-MySQL errorsnode就崩溃了,请问有什么好的方式处理sql异常?

问题解答

回答1:

把你的sql处理下,将不合法的值设为默认值

回答2:

启动文件最后加上这个处理试试看app.js

app.use(function (err, req, res, next) { res.status(err.status || 500); res.render(’error’, {message: err.message,error: {} });});

那你需要查看一下mysql connector的api一般肯定有异常处理机制。我用的mongoose。在声明连接的时候加上异常处理。

mongoose.connection.on(’error’, function (err) { console.error(’Mongoose connection error: ’ + err);});

标签: JavaScript
相关文章: