基於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 errors
node就崩溃了,请问有什么好的方式处理sql异常?
把你的sql處理下,將不合法的值設為預設值
啟動檔最後加上這個處理試試看
app.js
那你需要查看mysql connector的api一般一定有異常處理機制。
我用的mongoose。在聲明連線的時候加上異常處理。