【发布时间】:2016-01-07 23:21:21
【问题描述】:
我正在尝试返回SELECT 查询的结果,但由于nodejs-sqlite3 api 的构造方式,我需要通过回调获取数据。没问题我想了就做了如下。
var selectAllQuery =
'SELECT * FROM challenge',
selectQuery =
'SELECT * FROM challenge WHERE signature = $signature';
exports.read = function (sig) {
var result = [],
callback = function(err, rows) {
result = rows; // rows contains 3 items
};
db.serialize(function () {
if (sig) db.all(selectQuery, {$signature: sig}, callback);
else db.all(selectAllQuery, callback);
});
console.log(result); // prints []
return result; // array is empty
};
正如您可能从 cmets 中看到的,我的代码返回一个空数组,尽管在调用回调时 rows 包含数据。
有什么帮助吗?
【问题讨论】:
标签: javascript node.js sqlite callback