【问题标题】:VBA Runtime Error when connection to SQL Database连接到 SQL 数据库时出现 VBA 运行时错误
【发布时间】:2019-10-16 08:27:34
【问题描述】:

我正在尝试从同一域中的多台 PC 连接到 SQL Server

使用以下代码时:

Dim conn As ADODB.Connection

Set conn = New ADODB.Connection 'Neue Verbindung initialisieren

'Verbindung einrichten'
conn.ConnectionString = "PERSIST SECURITY INFO=True;Provider=SQLOLEDB.1;Server=WWDDB;Database=01Projekt;User ID=XXX;Password=XXX;Trusted_Connection=True;Integrated Security=SSPI;"
conn.Open

conn.Open 返回错误:

用户“XXXX”登录时出错

【问题讨论】:

  • 你为什么使用Integrated Security的命名用户?使用其中一个
  • 老实说,我不知道...删除集成安全性使其工作。谢谢:)

标签: sql excel vba connection


【解决方案1】:

问题是因为您使用的是Integrated Security 的命名用户。这两种模式不兼容。

尝试删除Integrated Security=SSPI

conn.ConnectionString = "PERSIST SECURITY INFO=True;Provider=SQLOLEDB.1;Server=WWDDB;Database=01Projekt;User ID=XXX;Password=XXX;Trusted_Connection=True;" conn.Open

或指定用户:

conn.ConnectionString = "PERSIST SECURITY INFO=True;Provider=SQLOLEDB.1;Server=WWDDB;Database=01Projekt;Trusted_Connection=True;Integrated Security=SSPI;" conn.Open

【讨论】:

    【解决方案2】:

    这是我的sn-p,试试看:

    Set cnConn = New ADODB.Connection
    
    With cnConn
    .Provider = "SQLOLEDB.1"
    .CursorLocation = adUseClient
    .ConnectionTimeout = 0
    .Properties("Data Source").Value = ' serverName
    .Properties("Password").Value = ' pswd
    .Properties("User ID").Value = ' userName
    .Properties("Initial Catalog").Value = ' init DB
    .Open
    End With
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-09
      • 1970-01-01
      • 1970-01-01
      • 2018-05-13
      • 1970-01-01
      • 2021-01-05
      • 2019-04-19
      相关资源
      最近更新 更多