Я использую это для подключения к Oracle:VBA: подключение к БД Oracle, пароль имеет специальный символ
Set mDBConnection = New ADODB.connection
Dim Rett As String
Rett = "CONNECTSTRING=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)"
Rett = Rett & "(HOST=myhost)(PORT=1521))(CONNECT_DATA =(SERVICE_NAME = myservice)));"
Rett = Rett & "uid=" & mDBUser & ";"
Rett = Rett & "pwd=" & mDBPassword & ";"
MsgBox Rett
mDBConnection.Open "DRIVER={Microsoft ODBC for Oracle};" & Rett
Это прекрасно работает, если пароль не содержит символ @. Если это произойдет - я получаю эту ошибку:
[Microsoft] [драйвер ODBC для Oracle] [Oracle] ORA-12154: TNS: не удалось разрешить идентификатор подключения указанного
Как я могу избежать этого символа? Может быть, мне нужно подключиться по-другому?
Вы пытались вставить пароль в двойные кавычки? –
@FlorentB. Я пробовал одиночные кавычки, и это не сработало. Как я могу использовать двойные кавычки? Это не скомпилирует: Rett = Rett & "pwd =" "& mDBPassword & "";" – javagirl
Добавьте еще одну двойную цитату, чтобы избежать двойной цитаты: 'pwd =" "" & mDBPassword & """; ' –