84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
odi
如图,我用了async的顺序执行,但是findone 和update 也是异步的,代码这样写的话,我只能更新一条记录,其实应该更新条的,rows的长度是4
怎么写才能保证每条都插入呢
业精于勤,荒于嬉;行成于思,毁于随。
執行成功update以後一定要呼叫callback函數,否則不會執行rows數組中的下一條。 另外無論是findOne還是update失敗,也就是有err,那麼一定要執行callback(err)。
程式碼差不多改成這樣:
db.findOne({uuid: row.uuid}, function(err, doc) { if(err) { callback(err); } else { db.update(..., function(err, num) { console.log(err); callback(err); }); } })
參考我的一篇相關部落格:http://xxgblog.com/2015/12/22/nodejs-async-mysql/
執行成功update以後一定要呼叫callback函數,否則不會執行rows數組中的下一條。
另外無論是findOne還是update失敗,也就是有err,那麼一定要執行callback(err)。
程式碼差不多改成這樣:
參考我的一篇相關部落格:http://xxgblog.com/2015/12/22/nodejs-async-mysql/