我的知识存在差距,我无法在互联网上找到答案。
基本上我正在创建一个node.js应用程序,它使用socket.io从SQLite数据库中推送条目。
我在这里使用SQLite的实现 - > https://github.com/developmentseed/node-sqlite3
我正在尝试执行声明:
db.serialize(function() {
db.run("SELECT * FROM messages WHERE id=?", messageNum, function(err, row) {
console.log(row.id);
});
});
我找不到文档。它暂时抛出了这个错误:
无法读取未定义
的属性'id'我基本上猜到了语法......任何人都知道它究竟是什么?
修改
我现在解决了一个效率极低的解决方案:
db.serialize(function() {
db.each("SELECT id, msg, date FROM messages", function(err, row) {
if(row.id === messageNum){
console.log(row.id);
}
});
});
如果有人能指出我在某个方面正确的方向,那将会很好,谢谢。
答案 0 :(得分:0)
阅读documentation - run
函数不会返回任何数据。
each
函数支持参数,就像run
:
db.each("SELECT id, msg, date FROM messages WHERE id = ?",
messageNum,
function(err, row) {
console.log(row.id);
});