node.js - 使用 node-postgres 从 SELECT 返回结果

标签 node.js postgresql rest

无法从 node-postgres 中的 SELECT 查询返回结果。现在行在代码块的末尾是空的。此选择仅从 POSTGRESQL 中的序列返回下一个值。我知道您无法从回调中检索结果,但是这里是否有人使用过 node-postgres(或任何其他数据库模块到 Node )可能知道修复?

client.connect();
var query = client.query("SELECT nextval(\'idgenerator\');");
var rows = [];
query.on('row', function(row, res) {
    rows.push(row);
});
query.on('end', function(result) {
    console.log(result.rowCount + ' rows were received');
});
//client.end();
console.log(rows);

最佳答案

你必须学习 javascript/nodejs 和事件编程。

query.on('row', function() {/*CODE*/}) 意思是:“读取一行时,执行CODE”。

这是异步的;所以 query.on() 注册事件,并返回。

所以当 console.log(rows) 被调用时,rows 仍然是空的,因为查询时还没有触发 'row' 事件。

您应该尝试将 'console.log(rows)' 放在 query.on('end') 事件处理程序的主体中。

在代码的任何地方,你也应该写一些console.log。你会看到异步的东西。

关于node.js - 使用 node-postgres 从 SELECT 返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17441495/

相关文章:

javascript - CSS 和 Javascript 文件未加载到我的根文件夹中的 HTML 文件中 - Openshift

node.js - 如何在 firebase-admin 中销毁 idToken?

postgresql - 级联复制/插入

django - 获取 django.db.utils.IntegrityError : duplicate key value violates unique constraint But value does not exists

rest - 使用Restful-API插件上传Grails文件

javascript - 如何在 Sharepoint 中获取文件的文件类型

api - 开始使用 RESTful HTTP API

node.js - 如何确保测试对象属性的更改不会传播到其他测试用例?

node.js - Microsoft Bot Framework 对话框不处理发送的 Facebook 位置

sql - 如何创建有限的唯一约束