Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – sqlite3读取表中的所有记录并返回大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试读取sqlite3表中的所有记录并通过回调返回它们.但似乎尽管使用序列化,这些调用仍然是ASYNC.这是我的代码: @H_403_7@

@H_403_7@

var readRecordsFromMediaTable = function(callBACk){

    var db = new sqlite3.Database(file,sqlite3.oPEN_READWRITE | sqlite3.oPEN_create);

    var allRecords = [];

    db.serialize(function() {

        db.each("SELECT * FROM MediaTable",function(err,row) {

            myLib.generateLog(levelDebug,util.inspect(row));
            allRecords.push(row);

        }

        callBACk(allRecords);
        db.close();

    });

}
@H_403_7@当回调被触发时,数组将打印'[]’.

@H_403_7@是否有另一个我可以进行的调用(而不是db.each)将一次性给我所有行.我没有必要在这里迭代每一行.

@H_403_7@如果没有,我如何读取所有记录,然后才调用带有结果的回调?

解决方法

我能够找到这个问题的答案.这是给任何正在寻找的人: @H_403_7@

@H_403_7@

var sqlite3 = require("sqlite3").verbose();

var readRecordsFromMediaTable = function(callBACk){

    var db = new sqlite3.Database(file,sqlite3.oPEN_READONLY);

    db.serialize(function() {

        db.all("SELECT * FROM MediaTable",allRows) {

            if(err != null){
                console.log(err);
                callBACk(err);
            }

            console.log(util.inspect(allRows));

            callBACk(allRows);
            db.close();

        });


    });

}

大佬总结

以上是大佬教程为你收集整理的node.js – sqlite3读取表中的所有记录并返回全部内容,希望文章能够帮你解决node.js – sqlite3读取表中的所有记录并返回所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。