Excel Visual Basic ADODB SQL连接字符串不起作用

时间:2019-03-06 09:24:46

标签: sql-server excel vba adodb

我试图通过vba中的自动连接连接到SQL Server,因此每次启动Excel时,SQL语句都会更新Excel中的表。

问题是,我的Connection字符串总是抛出异常:

  

“运行时错误” -2147217843(80040e4d)';自动化错误”

我提供了以下数据:

  • 服务器名,尽管名称中带有逗号
  • 数据库名称

我还有一个Windows用户(帐户名和密码),我从中运行“语句”,但是我怀疑是否有必要将此信息提供给SQL Server。

连接字符串如下所示:

Public Sub OpenConnection2(pServer As String, pCatalog As String)
    Dim mDataBase As New ADODB.Connection
    Dim mRS As New ADODB.Recordset
    Dim mCmd As New ADODB.Command

Call mDataBase.Open("Provider=SQLOLEDB;Initial Catalog=" & pCatalog & ";Data Source=" & pServer & ";")
    mCmd.ActiveConnection = mDataBase
End Sub

1 个答案:

答案 0 :(得分:0)

正如您所说的,FunnyO,它是连接字符串。 您可能没有正确的驱动程序定义。

尝试类似的方法: strCnn =“ Provider = SQLNCLI11; Server =”&pServer&“; Database =”&pCatalog&“; Integrated Security = SSPI;”

当然,这是一个非常简单的连接字符串。但这应该可以解决,因为它是非常常见的一个...