nodejs + sqlite:查询执行顺序

时间:2016-09-21 06:45:26

标签: node.js sqlite execution

使用带有nodejs的Sqlite,您不能将调用执行顺序等于查询的实际数据库执行顺序。 例如,在此pseuso代码中,您无法预测是否将在B之前插入A或反之:

function() {
    db.run("INSERT A", function() { });
    db.run("INSERT B", function() { });
}

但是回调的执行顺序呢?如果在INSERT B的回调之前调用INSERT A的回调,你可以在B之前推断出A将是插入器吗?

1 个答案:

答案 0 :(得分:1)

当代码执行开始时,所有回调都以event queue顺序传递给FIFO,事件队列监视当前堆栈执行,如果堆栈为空,则立即传递{{1} } first position's callback

因此,在您的情况下,如果调用stack回调,则在执行INSERT A回调之后首先执行回调。

我们建议您INSERT B https://www.youtube.com/watch?v=8aGhZQkoFbQ正确理解YouTube link您可以从这里获取很多想法,因为这个家伙以合适的方式解释了所有内容