gpt4 book ai didi

sql-server - Node.js Tedious Rows 是一个空数组,但 RowCount 是正确的

转载 作者:搜寻专家 更新时间:2023-11-01 00:12:01 27 4
gpt4 key购买 nike

这是我正在运行的基本代码块。我已按预期返回 RowCount(现在只有 5 个项目),但返回的行是一个空数组。

我做错了什么吗?顺便说一下,我正在连接到 SQL azure。我没有任何连接问题,我相信我已经设置了正确的选项(rowCollectionOnRequestCompletion 为 true)。

有什么想法吗?

var Connection = require('tedious').Connection;
var Request = require('tedious').Request;

exports.list = function(req, res){
var connection = new Connection({
"userName": "myCoolUsername",
"password": "SoMePa$$word",
"server": "something.database.windows.net",
"options": {
"database": "mySampleDbName",
"encrypt": true,
"rowCollectionOnDone": true,
"rowCollectionOnRequestCompletion": true
}
});

connection.on('connect', function(err){
//if no error, then we are good to go.
if(err){
console.log(err);
}else
{
var request = new Request("SELECT * FROM Products", function(err, rowCount, rows){
console.log(rowCount);
res.send(rows);
})
connection.execSql(request);
}
});

最佳答案

我遇到了同样的问题。使用 rowCollectionOnDone: true 选项和 Request 对象上的 doneInProc 事件解决,如下所示。我不知道为什么回调函数在应该的时候返回空数组。

var config = {
userName: '...',
password: '...',
server: 'localhost',
options: {
port: 2005,
database: 'db1',
rowCollectionOnDone: true
}
}

connection.execSql(new Request('SELECT * FROM Products', function(err, rowCount, rows){
if(err) {
throw err;
}
})
.on('doneInProc',function(rowCount, more, rows){
console.log(rows); // not empty
})
);

关于sql-server - Node.js Tedious Rows 是一个空数组,但 RowCount 是正确的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17331314/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com