我需要了解 pool.request().query(sqlQuery)
的工作原理。
我的代码工作正常,但我需要了解我可以对查询结果做些什么。
我当前的函数代码:
const result = await pool.request().query(sqlQuery);
return result;
在这段代码中,当我运行调试器并检查结果的值时,我看到了
output:Object {}
recordset:Array(1) [Object]
recordsets:Array(1) [Array(1)]
rowsAffected:Array(0) []
__proto__:Object {constructor: , __defineGetter__: , __defineSetter__: , …}
所以我假设我可以使用这些。我继续使用
const result = await pool.request().query(sqlQuery);
logger.info(" rows affected "+ rowsAffected.Array(0));
// The above is where I am not sure how I can get the rows affected.
return result;
我似乎并没有在这里获胜,正如控制台日志所说的那样
rows affected undefined.
我显然不知道我在这里的方式,我可能缺少一些东西。我查了谷歌,但所有的建议都导致未定义。
我需要 rowsAffected 信息来将正确的消息传递给响应。如何获取 rowsAffected 值
我会错过什么?
最佳答案
rowsAffected:Array(0) []
意味着 result
有一个名为 rowsAffected
的属性,它的类型是一个数组。这个数组恰好有 0 个元素。
将您的记录器语句更改为
logger.info(" rows affected "+ result.rowsAffected[0]);
这是假设 sqlQuery
实际上是在添加或更新记录。您有一个 0 元素数组这一事实意味着您没有更新此调用中的任何记录。
关于node.js - pool.request().query(sqlQuery) 受影响的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61650289/