Nic*_*erg 6 javascript mysql connection-pooling node.js express
我似乎无法弄清楚如何在 NodeJS MySQL Pool 查询之外获得结果。这是一些示例代码,可以更好地解释我的意思。
var result = 'Hello world!';
var mysql = require('mysql');
var pool = mysql.createPool({
connectionLimit : 100,
host : process.env.DB_HOST,
user : process.env.DB_USERNAME,
password : process.env.DB_PASSWORD,
database : process.env.DB_DATABASE
});
pool.query('SELECT * from user LIMIT 10', function (err, rows) {
result = rows;
});
res.send(result);
Run Code Online (Sandbox Code Playgroud)
以上将返回“Hello world!” 而不是查询。
如果我在 pool.query 函数中使用 console.log(result) ,它会返回查询中的行,但我似乎无法在函数之外获取数据。我已经记录了这个函数并检查了所有相关的函数,我想我只是缺少一些基本的东西。
您将在查询完成(并且调用回调)之前发送回结果。在回调中发送结果将解决该问题:
pool.query('SELECT * from user LIMIT 10', function (err, rows) {
result = rows;
res.send(result);
});
Run Code Online (Sandbox Code Playgroud)
正如亚伦指出的,这是一个常见问题。可以在这里找到更彻底的答案。
| 归档时间: |
|
| 查看次数: |
3978 次 |
| 最近记录: |