如何访问数据库列的单个值?

时间:2019-03-25 04:33:44

标签: mysql node.js

我正在尝试从SQL数据库读取单列数据,但是对于我来说,它总是返回undefined。

我已经尝试过搜索并且确实尝试使用回调,但是我认为我做错了。

这是我正在使用的代码

if(message.toLowerCase() === "!coins")
  {
    con.connect(function(err) {
      var usernameBal = user['display-name']
      con.getUserCoins = function(usernameBal, callback){
        con.query("SELECT * FROM users WHERE username =?", [usernameBal],
        function(err, results){
          callback(undefined, results)
        })
      }

      con.getUserCoins(usernameBal, function(err, results)
    {
      console.log(results);
      console.log(results.coins);
    })
      //con.query("SELECT * FROM users WHERE username =?", [usernameBal], function (err, result) {
    });
}

我期望的是result.coins显示37,因为这是在我的SQL数据库中设置的值。而是返回未定义状态。但是console.log(results)实际上返回

[ RowDataPacket { username: 'Joshj5hawk', coins: '37' } ]

任何提示将不胜感激。在语法等方面,我有一个不错的了解,但这是我第一次涉足MySQL或一般使用数据库。

谢谢!

1 个答案:

答案 0 :(得分:1)

尝试一下

results[0].coins instead of results.coins