我有一个.env
文件,其中包含以下内容,并且我正在使用繁琐的连接池。
SQL_SERVER=localhost
SQL_UNAME=US\JENNY
SQL_PSWD=Windows password
SQL_DB=DatabaseName
但是出现如下所示的登录失败错误:
ConnectionError:用户'US \ JENNY'登录失败
下面是我的dbconfig文件
const dotenv = require('dotenv');
dotenv.config();
module.exports = {
userName: process.env.SQL_UNAME,
password: process.env.SQL_PSWD,
server: process.env.SQL_SERVER,
options: {
instanceName: 'SQLEXPRESS',
encrypt: false,
database: process.env.SQL_DB,
rowCollectionOnDone: true,
useColumnNames: true // for easier JSON formatting
}
};
答案 0 :(得分:1)
不确定您使用的是哪个版本的Tedious。之所以提出它,是因为userName和password已移至身份验证部分,因此您当前的配置将向您发送弃用警告。
但是,如果使用的是当前版本,则身份验证部分还具有可以设置为ntlm的authentication.type设置。有关详细信息,请参见http://tediousjs.github.io/tedious/api-connection.html#function_newConnection。
以下连接配置适用于我的基于Windows的登录名:
module.exports = {
server: process.env.SQL_SERVER,
options: {
instanceName: 'SQLEXPRESS',
encrypt: false,
database: process.env.SQL_DB,
rowCollectionOnDone: true,
useColumnNames: true
},
authentication: {
type: 'ntlm',
options: {
userName: process.env.SQL_UNAME,
password: process.env.SQL_PSWD,
domain: process.env.SQL_DOMAIN
}
}
}