我正在尝试连接到SQL Server:
var sql = require("mssql");
var dbConfig = {
server: "LAP12\\INSTANCE1",
database: "SampleDb",
port: 1433,
options: {
trustedConnection: true
}
};
// connect to your database
sql.connect(dbConfig, function (err) {
if (err) console.log(err);
// create Request object
var request = new sql.Request();
// query to the database and get the records
request.query('select * from SampleTable', function (err, recordset) {
if (err) console.log(err)
// send records as a response
res.send(recordset);
});
});
但是我收到了这个错误:
ConnectionError:在ServerName中找不到INSTANCE1的端口...
我尝试按照https://github.com/patriksimek/node-mssql/issues/130的说明进行操作,但这没有用。 TCP已启用。
将配置更改为此也无济于事:
var dbConfig = {
server: "LAP12",
port: 1433,
options: {
instanceName: 'INSTANCE1',
database: 'SampleDb',
trustedConnection: true,
}
};
答案 0 :(得分:0)
好的,我遇到了同样的问题,将尝试提供帮助。 这是我的配置示例
const config = {
user: 'sa',
password: '****',
server: 'DESKTOP-Q5TO47P',
database: 'dbname',
options: {
encrypt: false
}
};
您需要打开SQL Server浏览器。转到启动菜单或搜索,然后查找SQL Server配置管理器。运行! (我使用的是2018版)
在SQL Server浏览器上单击鼠标左键,然后单击重新启动
返回右选项卡,单击“ SQL Server网络配置”
让我知道它是否有效。
答案 1 :(得分:0)
添加此加密后:false,应用程序未显示任何错误,也没有响应,未连接到数据库
答案 2 :(得分:0)
就我而言,“SQL 浏览器”无法访问,因为防火墙端口未打开。 我的解决办法是打开端口或者把dbConfig改成(无实例名,无端口):
var dbConfig = {
server: "LAP12",
database: "SampleDb",
options: {
trustedConnection: true
}
};
该端口仍对 SQL-Browser 关闭,通过更改我可以连接到我的数据库。
我的 nodejs 包 'mssql'