Соединения Oracle из приложения COM+

У нас работает сервер Oracle 10.2.0. На сервере есть схема под названием FOO. Я создал подключение ODBC к схеме с помощью клиента 10.2.0.

У нас есть настольное приложение с основными библиотеками доступа к базе данных, написанными нами, которые используют SQLDriverConnect и т. д.

У нас также есть приложение COM+, в котором используются те же базовые библиотеки.

Когда я подключаюсь к настольному приложению, используя соединение ODBC, проблем нет.

Подключившись к приложению COM+, я не могу выполнять какие-либо запросы. SQLDriverConnect возвращает SUCCESS, но затем любая попытка выполнить запрос дает ошибку Oracle «не подключен». Приложение COM+ настроено на запуск от имени «вошедшего в систему пользователя».

Я уверен, что это, вероятно, проблема безопасности, но я не знаю, с чего начать.

Любые идеи?

Спасибо.


person Carl    schedule 21.07.2009    source источник
comment
Какой язык программирования? Покажите код, который вызывает ошибку.   -  person zendar    schedule 21.07.2009
comment
Первое, что я бы сделал, это установил приложение COM+ на тот же сервер, на котором установлена ​​БД Oracle. Это устранит большинство проблем с безопасностью (привилегии, брандмауэры и т. д.) и позволит убедиться, что все остальное работает правильно.   -  person eran    schedule 21.07.2009


Ответы (1)


Я нашел причину проблемы, это ошибка Oracle.

Причина: ошибка Oracle 4991478; Приложение COM не может подключиться при использовании Oracle10g Client 10.2, если используется нейтральная многопоточность или Free-Threading Marshaller, сбой с ORA-21561 / ORA-00022

Решение: Установите клиент Oracle (исправление) 10.2.0.3.0.

person Carl    schedule 22.07.2009