Microsoft oledb провайдер для оракула не работает для Oracle 19c
Я работаю над настольным приложением. Наше настольное приложение также поддерживает Oracle DB.
Для подключения к базе данных Oracle мы используем Microsoft oledb провайдера для оракула. Он работает хорошо, пока я не подключусь к Oracle 12c.
Теперь, когда мы используем Oracle 18C или более позднюю версию, мое приложение падает при открытии соединения.
Пожалуйста, посмотрите фрагмент кода ниже:
Dim dtb As ADODB.Connection
Dim conn As String
conn = "Provider=MSDAORA;" & "Data Source=INRT" & ";Password=abc@908" &
";User ID=system"
dtb.open(conn, "system", "abc@908",
ADODB.ConnectOptionEnum.adAsyncConnect)
Здесь выдается ошибка "Попытка чтения или записи защищенной памяти. Это часто указывает на то, что другая память повреждена". и вылетает.
Примечание. Используя клиент Oracle 19c (32-разрядный), я могу установить соединение, используя приведенные выше сведения.
Пожалуйста, помогите мне решить проблему.
0 ответов
Информация об исключении: Тип исключения: AccessViolationException Сообщение об исключении: Попытка чтения или записи в защищенную память. Это часто указывает на то, что другая память повреждена.
MSDAORA устарела, измените поставщика =MSDAORA на ниже
Стандартный поставщик безопасности =OraOLEDB.Oracle; Источник данных =MyOracleDB; Идентификатор пользователя = myUsername; Пароль = myPassword; Oracle Trusted Connection Этот параметр определяет аутентификацию ОС, которая будет использоваться при подключении к базе данных Oracle. Провайдер =OraOLEDB.Oracle; Источник данных =MyOracleDB;OSAuthent=1;