因此,我一直试图使用可信连接(Windows身份验证)连接到我的SQL数据库,在nodejs中使用mssql,但到目前为止没有成功。
我有以下配置:
var express = require('express');
var config = {};
config.mssql = {
server: 'CLT-GFI-0278',
database: 'Interview',
options: {
trustedConnection: true
}
};
module.exports = config;在config.js中实现了这一点,然后将其集成到要在以下文件中使用mssql的文件中:
var express = require('express');
var router = express.Router();
var sql = require('mssql');
var config = require('./../config');
sql.connect(config, function (err) {
console.log(err);
});
router.get('/getYear/:year', function (request, response) {
sql.Request()
.query('select * from SomeTable')
.then(function(recordsets) {
console.dir(recordsets);
})
.catch(function(err) {
console.log(err.message);
});
response.send();
});
module.exports = router;但是当我运行这个应用程序时,我会得到以下响应:

有谁能引导我朝着trustedConnection工作的方向前进吗?我知道我可以创建一个用户并授予它权限,但是我想让它像这样运行。事先非常感谢
发布于 2016-04-26 14:00:16
我为同样的问题而挣扎,在某个地方读到
默认情况下不可能使用Windows身份验证。
您必须使用登录/密码组合登录,或者使用edge包。
https://github.com/tjanczuk/edge
https://github.com/tjanczuk/edge-sql
示例:
var edge = require('edge');
var params = {
connectionString: "Server=YourServer;Database=YourDB;Integrated Security=True",
source: "SELECT TOP 20 * FROM SampleData"
};
var getData = edge.func( 'sql', params);
getData(null, function (error, result) {
if (error) { console.log(error); return; }
if (result) {
console.log(result);
}
else {
console.log("No results");
}
});https://stackoverflow.com/questions/36867032
复制相似问题