【问题标题】:How to retrieve data from a SQL Server db如何从 SQL Server 数据库中检索数据
【发布时间】:2012-08-01 03:34:51
【问题描述】:

我正在 VBA 中编写代码 sn-p 以从 SQL Server 2008r2 数据库中提取数据。但是,我在 Conn.Open 中遇到错误:[Microsoft][SQL Server Native Client 10.0]Named Pipes Provider: Could not open a connection to 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 之后的第三个顺序)。

如何消除此错误?我是否使用了正确的连接字符串?

【问题讨论】:

  • 愚蠢的问题:错误 53 是 Cannnot find network path;你的服务器路径正确吗?
  • 代码运行时OurDB的值是多少?
  • 你是指服务器的IP吗?
  • 这里有这个错误的检查清单:blog.sqlauthority.com/2009/05/21/…
  • @Hansup,是的,我指的是服务器的 IP。

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


【解决方案1】:

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

Server=12.34.5678

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

【讨论】:

    猜你喜欢
    • 2012-12-19
    • 1970-01-01
    • 2020-07-25
    • 1970-01-01
    • 2019-01-20
    • 2016-03-17
    • 2014-01-05
    相关资源
    最近更新 更多