将postgre数据库查询的结果转换为参数时遇到一些问题。 我正在使用带有pg的node.js,我想从中获取DB中的值并将其分配给参数,稍后在其他函数中使用它。
我的代码如下所示:
var result2 = '';
var pg = require('pg');
var conString = "pg://user:@localhost:5432/db";
var client = new pg.Client(conString);
client.connect();
var query = client.query('SELECT * FROM islocked');
query.on("row", function (row, result) {
result.addRow(row);
});
query.on("end", function (result) {
console.log("test: " + JSON.stringify(result.rows));
result2 = result.rows;
});
问题是result2永远不会使用新值进行更新。为什么?我怎么能这样做?
谢谢!
答案 0 :(得分:0)
你确定吗?
我猜你可能正在尝试在代码末尾执行console.log(),如果是这种情况,则在所有查询结果数据之前检查result2值收集,因此,在result2值以任何方式改变之前。
尝试使用此代替简单的console.log():
Rect r = new Rect();
Log.d("r", r.toString()); // Rect(0, 0 - 0, 0)
Bundle bundle = new Bundle();
bundle.putParcelable("KEY", r);
Rect r2 = bundle.getParcelable("KEY");
r2.set(100, 100, 100, 100);
Log.d("r", r.toString()); // Rect(100, 100 - 100, 100)
Log.d("r2", r2.toString()); // Rect(100, 100 - 100, 100)
答案 1 :(得分:-1)
我使用文件而不是连接到数据库或API。