У меня есть унаследованное приложение VB6, которое я унаследовал. Проблема, с которой я сталкиваюсь, заключается в том, что я получаю печально известный
ORA-12638: Credential retrieval failed
когда он пытается подключиться к одной из наших баз данных Oracle. Однако я могу подключиться отлично от SQLPlus и Toad. Я Googled вокруг, и все, кажется, говорят, что изменение их файла sqlnet.ora на
SQLNET.AUTHENTICATION_SERVICES=(NONE)
сделал трюк. Мне еще предстоит найти кого-нибудь с альтернативным решением. Вот как выглядит моя строка подключения:
"PROVIDER=OraOLEDB.Oracle;DATA SOURCE=(DESCRIPTION = " & _
"(ADDRESS = (PROTOCOL = TCP)(HOST = server1)
(PORT = 1521))" & _
"(ADDRESS = (PROTOCOL = TCP)(HOST = server2)
(PORT = 1521))" & _
"(LOAD_BALANCE = yes) " & _
"(CONNECT_DATA = " & _
"(SERVER = DEDICATED) " & _
"(SERVICE_NAME = database_name_here) " & _
") " & _
"); " & _
"User Id=username_here;Password=password_here;"
Что касается моего кода VB, это довольно просто.
Private oracleDatabaseConnection As ADODB.Connection
Set oracleDatabaseConnection = New ADODB.Connection
oracleDatabaseConnection.Open oracleConnectionString
У кого-нибудь есть идеи?
Спасибо.:)