我没有获得正确的输出 SQL Server NodeJS



我尝试从nodejs连接并查询我的sql server,代码如下:

const http = require('http');
var express = require('express');
var app = express();
app.get('/', function (req, res) {
var sql = require("mssql");
var dbconfig = {
server: "xxxx",
user: "xxxx",
password: "xxxx",
database: "xxxxx",
};
sql.connect(dbconfig, function (err) {
if (err)
console.log(err);
var request = new sql.Request();
request.query('select PersonID from Persons', function (err, recordset) {
if (err) {
console.log(err)
} else {
res.send(recordset);
console.log(recordset);
}
//connect.close();
});
});
});

结果是

"{"记录集":[["PersonID":1}]],"记录集":[["PersonID":1}],"输出":{},"rowsAffected":[1]}"我想要没有这样的记录集的结果:

[{"PersonID":1}]''

正如文档中提到的,节点mssql-库支持多个查询,这就是为什么您在结果中看到recordsets的原因。在您的情况下——因为您只有一个选择——您可以只返回第一个记录集,即

request.query('select PersonID from Persons', function (err, result) {
if (err) {
// handle error
} else {
res.send(result.recordset);
}
});

最新更新