javascript - Node.js mysql 查询未定义

标签 javascript mysql node.js

我正在 Node.js 上运行以下代码并且 我正在尝试将 mysqlnodejs 一起使用:尝试运行查询:从表中选择数字。结果如下:

"undefined"

function getNumbers()
{
    cio.query("SELECT numbers FROM rooms WHERE durum='1'", function(err, result)
    {
        if (err) 
         throw err;
        else
     result[0].numbers;

    });

}
var kar = getNumbers();
 console.log(kar);

那么,我该怎么办?请帮忙。

最佳答案

函数 getNumbers() 及其内部调用的函数不返回任何值,因此结果将始终未定义

除此之外,您还需要处理 asynchronous功能性质:
等到数据库查询完成后再返回值
您可以使用 callback function 来完成此操作.

示例如下:

function getNumbers(callback) {
    cio.query("SELECT numbers FROM rooms WHERE durum='1'", function (err, result) {
        if (err) throw err;
        callback((result.length > 0) ? result[0].numbers : "");
    });
}

getNumbers(function (result) {
    console.log(result);
});

关于javascript - Node.js mysql 查询未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53987183/

相关文章:

javascript - 当元素成为 URL 目标时发生的事件

javascript - jQuery 选择器不在 chrome 控制台中

javascript - 谷歌地图融合表层反转多边形

javascript - 编辑表格行

php - 优化此 PHP 代码?

javascript - 从 promise 链的中间解决

javascript - 我从 main.js 导出模块时做错了什么?

MySQL——让所有的事情都变成一个查询

javascript - 可以在收听时添加到 Node.js Express 的路由吗?

node.js - 如何让断言打印成功消息?