我正在尝试从运行以下代码的macbook连接到网络中Windows 10计算机上的数据库设置。我可以使用tedious连接,但不使用mssql。就好像用户名或密码是错误的。我想让mssql工作的原因是为了池,因为它似乎有更多的支持.否则,我只会使用tedious。代码同时创建连接,输出显示冗长的连接,但是mssql失败了。
const express = require('express');
const sql = require('mssql');
const bodyParser = require('body-parser');
const app = express();
var Connection = require('tedious').Connection;
// Body Parser Middleware
app.use(bodyParser.json());
// CORS Middleware
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
});
// define listineng port
const PORT = 5006;
// define tedious config
var config = {
server: "JAMBER-VR1.local",
userName: "testuser",
password: "testuserpass",
database: "SQLEXPRESS",
options: {
encrypt: false
}
};
var connection = new Connection (config);
connection.on('connect', function(err){
if(err!=null){
console.log(err);
console.log("not connected - tedious");
}
else{
console.log("Connected - tedious")
connection.close();
};
});
// Define SQL config
const dbConfig = {
user: 'testuser',
password: 'testuserpass',
server: 'JAMBER-VR1.local',
database: 'SQLEXPRESS',
// port: 1433,
// logging: true,
options: {encrypt: false},
pool: {
max: 100,
min: 0,
idleTimeoutMillis: 30000
}
}
const executeQuery = async () => {
try {
let pool = await sql.connect(dbConfig);
console.log("pool connected - mssql");
let result = await pool.request()
.input('input_parameter', sql.Int, value)
.query('select * from donor')
console.log("Result: ", result);
} catch (err) {
console.log("Error: ", err);
}
}
executeQuery();我得到了以下错误。
无恶魔启动
node index.js在5006端口上运行 连络乏味 错误:{ ConnectionError:用户“testuser”登录失败。 在Connection.tedious.once.err (/Users/jordanszymczyk/Code/TRTL/server_sql /node_modules/mssql/lib/tedious.js:237:17) 在Object.onceWrapper (events.js:273:13) (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/connection.js:1292:16) at Connection.message (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/connection.js:1805:14) at Connection.dispatchEvent (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/connection.js:1004:38) at MessageIO。(/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/connection.js:884:18) at MessageIO.emit (events.js:182:13) at ReadablePacketStream.(/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/message-io.js:104:16) at ReadablePacketStream.emit (events.js:182:13)代码:'ELOGIN',originalError:{ ConnectionError:登录失败的用户'testuser‘。在帕瑟的(/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/errors.js:12:12) ConnectionError。(/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/connection.js:628:33) at Parser.emit (events.js:182:13)在Parser。(/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/token/token-stream-parser.js:54:15) at Parser.emit (events.js:182:13)在addChunk (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/readable-stream/lib/_stream_readable.js:291:12) at readableAddChunk (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/readable-stream/lib/_stream_readable.js:278:11) (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/readable-stream/lib/_stream_readable.js:245:10) at Parser.Transform.push (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/readable-stream/lib/_stream_transform.js:148:32) at doneParsing (/Users/jordanszymczyk/Code/TRTL/server_sql/node_modules/tedious/lib/token/stream-parser.js:110:18)消息:“用户‘testuser’登录失败。”代码:'ELOGIN‘},名称:'ConnectionError’}
您可以看到console.log(“连接-乏味”)打印,然后立即出现mssql错误。我也尝试过使用本地IP来获得同样的结果。通过sqlcmd进行测试。
发布于 2018-09-27 15:05:16
SQLEXPRESS将是Server服务器实例(Ie)的名称。我在您的代码中没有看到它,但我猜数据库名不是SQLEXPRESS吗?
在mssql连接中,dbConfig尝试将Database更改为在SQL实例上创建的数据库的真实名称。
发布于 2020-03-06 20:06:43
不要忘记激活这两种身份验证

发布于 2018-09-27 15:30:07
固定的dgconfig如下:
const dbConfig = {
user: 'testuser',
password: 'testuserpass',
server: 'JAMBER-VR1.local',
database: 'donor',
options: {encrypt: false},
pool: {
max: 100,
min: 0,
idleTimeoutMillis: 30000
}
}删除SQLEXPRESS并将其替换为数据库名称。
https://stackoverflow.com/questions/52539936
复制相似问题