Как решить эту ошибку Сетевые интерфейсы SQL Server: строка подключения недопустима [87]

#sql #vba #sqlconnection

#sql #vba #sqlconnection

Вопрос:

Я пытаюсь подключить sql server к vba, используя код из обучающего видео на YouTube (https://www.youtube.com/watch?v=OWKae1pTTnE ), но когда я запускаю код, чтобы проверить, работает ли он, у меня возникла ошибка при открытии соединений, не могли бы вы мне помочь, пожалуйста? Я уже установил sql server 2019 и у меня есть SQL Server Management Studio 18.

ошибка: сетевые интерфейсы SQL Server: строка подключения недопустима [87]

Вот код:

 
    Dim cn As ADODB.Connection
    Dim rs As ADODB.Recordset
        
    Set cn = New ADODB.Connection
    
    cn.ConnectionString = "Provider=MSOLEDBSQL;" amp; _
        "Server=MyServerMSSQLSERVER;" amp; _
        "Database=master;" amp; _
        "Trusted_Connection=yes;"
    
    cn.Open 'The error occurs here
    
    
    cn.Close
    
 

Комментарии:

1. У вас нет имени пользователя и пароля. Вы имели в виду использовать проверку подлинности Windows, add Integrated Security = SSPI ?

2. Просто попробовал это и получил ту же ошибку: (

3. Какую версию драйвера OLEDB вы используете? Проверьте connectionstrings.com /… для получения дополнительной информации о строках подключения

4. Можете ли вы опубликовать полное сообщение об исключении?

5. Я предлагаю вам использовать этот метод для создания допустимой строки подключения social.technet.microsoft.com/wiki/contents/articles /…

Ответ №1:

Решение, помогающее решить проблему выше, было предоставлено @Nick.McDermaid:

Моя ошибка была в строке подключения, перейдя по ссылке: [1]: https://social.technet.microsoft.com/wiki/contents/articles/1409.how-to-create-a-sql-connection-string-for-an-application-udl-file.aspx?Redirected=true

В нем показаны простые шаги по соединению строк на основе необходимых условий. Как только вы выполните шаги, которые и используете, все работает нормально! В моем случае решение выглядит так:

     Dim rs As ADODB.Recordset
        
    Set cn = New ADODB.Connection
    
    cn.ConnectionString = "Provider=SQLOLEDB.1;
                           Integrated Security=SSPI;
                           Persist Security Info=False;
                           Initial Catalog=MyDataBaseName;
                           Data Source=MyServer"
    
    cn.Open 'The error that was here disappiers and runs fine'
    
    
    cn.Close