繁体   English   中英

sqlite3和node-js返回未定义

[英]sqlite3 and node-js returns undefined

我试图通过Node.jssqlite3函数传递值,但是我总是变得undefined

这是我的代码:

var sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database('./rolety.db');
var row;

db.get("SELECT open_hour, open_minut FROM autorun_open", function(err, row) {
    console.log(row.open_hour);
    console.log(row.open_minut);
    row = row.open_hour;
});

console.log("R:" + row);

据我所知,它是异步运行的,因为我得到了类似的东西:

Row: undefined
6
45

我的代码的最后一行在sql结果之前运行。 我应该怎么做才能从sql获取正确的值?

您需要添加这样的回调函数:

db.get("SELECT open_hour, open_minut FROM autorun_open", function(err, row) {
    console.log(row.open_hour);
    console.log(row.open_minut);
    row = row.open_hour;
    callback(row);
});

function callback(row) {
    console.log("R:" + row);
}

诀窍是,获取成功与否之后将调用回调函数。 在下一步中,您应该考虑获取失败的错误处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM