我正在VBA中编写代码片段以从SQL Server 2008r2数据库中提取数据。但是,我在Conn.Open收到错误: [Microsoft] [SQL Server Native Client 10.0]命名管道提供程序:无法打开与SQL Server的连接[53] 。
使用ConnectionString.com和另一个SO Question,我写了这个:
Function GetAddress() As String
Dim Conn As ADODB.Connection
Set Conn = New ADODB.Connection
Dim Rst As ADODB.Recordset
Set Rst = New ADODB.Recordset
Conn.ConnectionString = "Provider=SQLNCLI10;Server=12.34.5678;" & _
"Database=OurDB;User ID=myuserid;Password=mypw;"
Conn.Open
Set Rst.ActiveConnection = Conn
Rst.Open "Select top 1000 * from MainTable"
End Function
Googling该错误表明命名管道可能已被禁用。在此之后,我检查了SQL Server配置管理器和命名管道已完全启用(共享内存和TCP / IP后面的第三顺序)。
如何使此错误消失?我使用正确的连接字符串吗?
答案 0 :(得分:1)
仔细检查连接字符串的这一部分:
Server=12.34.5678
它看起来像是通过IP地址引用服务器,但它不是IP地址。