Excel Visual Basic ADODB Строка подключения SQL не работает - PullRequest
0 голосов
/ 06 марта 2019

Я пытаюсь подключиться к серверу SQL через автоматизацию в VBA, поэтому при каждом запуске Excel оператор SQL обновляет таблицу в Excel.

Проблема в том, что моя строка подключения всегда вызывает исключение:

«Ошибка времени выполнения» -2147217843 (80040e4d) ';Ошибка автоматизации "

У меня есть следующие данные:

  • Servername, хотя в его имени запятая
  • Имя базы данных

У меня также есть пользователь 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 голосов
/ 17 июля 2019

Как вы, FunnyO, уже заявили, это строка подключения.Возможно, у вас нет правильного определения драйвера.

Попробуйте что-то вроде этого: strCnn = "Provider = SQLNCLI11; Server =" & pServer & "; База данных =" & pCatalog & "; Integrated Security = SSPI;"

Конечно, очень простая строка подключения.Но это должно сработать, потому что это очень распространенный ...

...