【发布时间】:2020-09-20 08:19:22
【问题描述】:
我正在使用“mssql”npm 包将我的 SQL 服务器连接到我的节点 JS。 我问了几个问题,但都没有解决。
我的 SQL Server 登录凭据是-
server type : Database Engine
Server name : DESKTOP-MPF88ST\KUSHAL
authentication : sql server authentication
login : username
password : password
我想要的数据库是 schoolDB 我的代码是这样的
const sql =require("mssql")
const config = {
login: 'username',
password:'password',
server: 'localhost',
database: "schoolDB",
options : {
enableArithAbort: true
},
port : 1433
}
sql.connect(config, (err) => {
if(err){
console.log(err);
}
else {
console.log("Connected")
}
我启用并设置了我的 TCP/IP,启用了 SQL Server 浏览器,但它仍然抛出错误-
ConnectionError: Failed to connect to localhost:1433 - Could not connect (sequence)
at Connection.<anonymous> (E:\Kushals\server\node_modules\mssql\lib\tedious\connection-pool.js:68:17)
at Object.onceWrapper (events.js:422:26)
at Connection.emit (events.js:315:20)
at Connection.socketError (E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connection.js:1290:12)
at E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connection.js:1116:21
at SequentialConnectionStrategy.connect (E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connector.js:87:14)
at Socket.onError (E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connector.js:100:12)
at Socket.emit (events.js:315:20)
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3) {
code: 'ESOCKET',
originalError: ConnectionError: Failed to connect to localhost:1433 - Could not connect (sequence)
at ConnectionError (E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\errors.js:13:12)
at Connection.socketError (E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connection.js:1290:56)
at E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connection.js:1116:21
at SequentialConnectionStrategy.connect (E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connector.js:87:14)
at Socket.onError (E:\Kushals\server\node_modules\mssql\node_modules\tedious\lib\connector.js:100:12)
at Socket.emit (events.js:315:20)
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
code: 'ESOCKET'
}
}
我该如何解决??
【问题讨论】:
-
您的服务器名称是
DESKTOP-MPF88ST\KUSHAL,但您指定了本地主机。您需要指定server : "DESKTOP-MPF88ST\KUSHAL" -
@PrebenHuybrechts 也尝试过这样做......没有帮助。仍然是完全相同的错误....
-
@Preben 在命令行中 ping DESKTOP-MPF88ST 看看你得到了什么,那是你所在的机器吗?当你不再使用 localhost 时,你怎么能得到完全相同的错误?
-
我认为你们没有得到它,当您启动 SQL Server Management Studio 时,您被要求登录,“服务器名称”字段设置为该值。那可能不是真正的服务器,我ping了一下,cmd说
Ping request could not find host DESKTOP-MPF88ST\KUSHAL. Please check the name and try again. -
@KushalChowdhury 您被要求 ping 计算机名称 DESKTOP-MPF88ST,而不是服务器实例名称 DESKTOP-MPF88ST\KushAL。
标签: javascript sql node.js sql-server