如何从SQL Server数据库中检索数据

时间:2012-07-31 16:31:16

标签: vba ms-access ms-access-2007 access-vba

我正在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后面的第三顺序)。

如何使此错误消失?我使用正确的连接字符串吗?

1 个答案:

答案 0 :(得分:1)

仔细检查连接字符串的这一部分:

Server=12.34.5678

它看起来像是通过IP地址引用服务器,但它不是IP地址。