Вызов Oracle 11g SP из команды OLE DB служб SSIS 2008 R2 в задаче данных (с параметрами входа и выхода) - PullRequest
0 голосов
/ 20 декабря 2011

Попытки решения аналогичных вопросов по SO, но без кубиков.

В рамках задачи потока данных мне нужно вызвать Oracle SP, который принимает два входных и один выходной параметры, и назначить возвращенное значение столбцу вflow.

Подпись Oracle 11g SP:

SM_GET_VALUE_PR (
   v_emplid      IN VARCHAR2,
   v_strm        IN VARCHAR2, 
   v_admit_type OUT NUMBER)

В своей задаче потока данных я добавил компонент Команды OLE DB, установил соединение и попытался использовать

EXEC SM_GET_VALUE_PR ?, ?, ? OUTPUT 

как SQLCommand

Первая проблема заключается в том, что параметры не создаются автоматически для отображения, поэтому я вручную добавил три столбца в область внешних столбцов в компоненте.

Когдапытаясь запустить поток данных, я получаю неверный оператор SQL.Я также попытался использовать {call SM_GET_VALUE_PR ?,?,? OUTPUT} безуспешно.

У меня есть драйверы MSORA и ORAOLEDB, оба отказывают, хотя MS отказывают во время разработки, в то время как Oracle отказывают до запуска.

Редактировать: я пробовал: - ВЫЗВАТЬ SMCUBE.SM_GET_ETHNICITY_PR?,?,?OUTPUT [Команда OLE DB [855]] Ошибка: код ошибки служб SSIS DTS_E_OLEDBERROR.Произошла ошибка OLE DB.Код ошибки: 0x80040E14.Доступна запись OLE DB.Источник: "OraOLEDB" Hresult: 0x80040E14 Описание: "ORA-00900: недопустимый оператор SQL".- EXEC SMCUBE.SM_GET_ETHNICITY_PR?,?,?ВЫХОД То же сообщение об ошибке

Полагаю, я надеюсь, что кто-то скажет: «Я использовал параметризованные хранимые процедуры в SSIS, указывающие на Oracle, и это правильный синтаксис xxxx»

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