Строка подключения VBA для подключения SQL-сервера с сертификатом SSL - PullRequest
0 голосов
/ 10 октября 2019

Я использую строку подключения VBA для подключения к SQL-серверу в моем сценарии VB. Ранее он работал без сбоев.

Недавно команда сервера установила сертификат SSL в том, в котором мой макрос сейчас не выполняется, и заявляет о безопасности SSLошибка, как на снимке ниже.

Error

Может кто-нибудь помочь мне решить проблему.

Заранее спасибо !!!

С уважением,

1 Ответ

0 голосов
/ 10 октября 2019

Я бы объединил значения, требуемые для строки подключения, прежде чем открывать ее, вместо cnSrc.Open.

Я работаю с VBA и использую ADO для ежедневных запросов к серверу SQL, и я использую следующий формат для строк подключения:

Provider=SQLOLEDB.1;User ID=UserName;Password=Password;Data Source=SeverName;Initial Catalog=DataBaseName

Вы можете использовать код нижепроверить:

Private Sub TestConnection()

    Dim cnSrc As ADODB.Connection
    Dim CONNECTION_STRING As String
    Dim cnServer As String, cndb As String, cnUser As String, cnPwd As String

    cnServer = "SeverName"
    cndb = "DataBaseName"
    cnUser = "UserName"
    cnPwd = "Password"

    CONNECTION_STRING = "Provider=SQLOLEDB.1;User ID=" & cnUser & ";Password=" & cnPwd & ";" & _
                        "Data Source=" & cnServer & ";Initial Catalog=" & cndb

    On Error GoTo CleanFail
    Set cnSrc = New ADODB.Connection
        cnSrc.Open CONNECTION_STRING

    'bit wise comparison to check the connection's state
    Debug.Assert (cnSrc.State And adStateOpen) = adStateOpen    'Debug.Assert pauses execution if false


CleanExit:
    'close the connection
    If Not cnSrc Is Nothing Then: If (cnSrc.State And adStateOpen) = adStateOpen Then cnSrc.Close
    Set cnSrc = Nothing
    Exit Sub

CleanFail:
    Resume CleanExit

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...