mysql - Node.js MySql 查询返回未定义的行对象

标签 mysql node.js

考虑到以下情况:

 connection.query('SELECT * from packages WHERE AQUIRED="'+req.session.user+'" AND PROCCESSED=0 ORDER BY PACKAGEID LIMIT 1 ', function(err, resultRow) {
    console.log( 'rows '+resultRow.toString() ); // by here resultRow is not defined and err is null
 }

数据库已连接,req.session.user 不是空字符串,并且数据库表中有与此查询匹配的行。

怎么会发生 errnull,但 resultRow 也未定义?如果有的话,resultRow 应该是空对象。

有什么想法吗?

最佳答案

正如 Jso 提到的,回调内的变量名称存在拼写错误。我相信 Node.js 中的 SQL 返回一个对象数组,所以如果你尝试类似的事情

console.log( 'rows '+resultRow[0].toString() );

它应该可以工作。当然,添加错误检查等总是一个好主意,例如数组的大小。祝你好运,伙计!

关于mysql - Node.js MySql 查询返回未定义的行对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33743182/

相关文章:

node.js - 获取 TypeError : wsc. require is not a function for hyco-ws npm package

javascript - 如何在使用 Puppeteer 评估页面响应之前使表单页面元素加载其内部文本?

mysql - 是什么驱动了无序 MySQL 请求的自然结果顺序

mysql - MYSQL如何限制复合记录?

node.js - 货币和间隔字段必须在该订阅的所有计划中匹配。发现间隔字段不匹配

node.js - 如何使用sequelize 添加规范化记录?

javascript - 通过更好的排序加速 MongoDB find()? (使用 Mongoose orm)

MySQL INSTR - 匹配精确子串

mysql (copy) insert into from select 并添加一个别名列

java - MySQL 获取数据的问题