【发布时间】:2021-11-29 13:28:55
【问题描述】:
现在的问题是 for 循环会立即循环所有内容 但我希望它在循环之前等待, 因为 evetime 循环运行它会将数据插入数据库(这需要时间) 所以我希望它等到数据被插入 然后增加 i 的值并再次循环
function insert_into_db(){
for (let i = (howmuch/dueAmount);i>0;i--){
clientChartArray = [aa1,bb1,(cc1*i),dd1,ee1,ff1,gg1,hh1]
PreviousChangesArray = [a1,b1,c1,d1,rowid]
if(check_bal){
clientChart.run(`UPDATE hp2269 SET RD = ?, DL = ?, BA = ?, RA = ? WHERE rowid = ? ;`,PreviousChangesArray,(err)=>{
if(check_reminder == false){
chartInsert(clientChartArray)
}
})
}else{
chartInsert (clientChartArray)
}
}
}
它带来的问题
- 某些插入需要的时间比其他插入要长
- 所以循环不会等待它们,而是继续下一次插入
- 所以条目 GET JUMBLED 并且不要按顺序插入
- 最后插入的行也用于不同的函数,因此它必须准确才能获得所需的结果
我实际上是使用数据库的新手,所以我不知道我是否做错了,或者我的代码中是否存在根本问题,所以请考虑帮助我解决 TQ
【问题讨论】:
标签: javascript sql node.js for-loop async-await