Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.05.17;
Скачать: CL | DM;

Вниз

Вопрос по работе с ADOStoredProc для СУБД Oracle   Найти похожие ветки 

 
Razrab7 ©   (2008-09-05 15:16) [0]

Добрый день!
Подсоединяюсь к Oracle через компоненты ADO - ADOConnection и ADOQuery. Попытался при помощи ADOStoredProc выполнить хранимую функцию FNC_OBH_RZ. Выдается ошибка: "FNC_OBH_RZ is not a procedure or is undefined". Выходит, что ADOStoredProc работает только с хранимыми процедурами? Вопрос: а каким образом тогда работать с хранимыми функциями?


 
Ega23 ©   (2008-09-05 15:18) [1]

Уже почти 9 лет работаю с базами, но темин "хранимая функция" вижу впервые...


 
Медвежонок Пятачок ©   (2008-09-05 15:24) [2]

select myfrunctionname from dual


 
Razrab7 ©   (2008-09-05 15:25) [3]

Ega23

Разве функция, находящаяся в определенной схеме на сервере БД Oracle не является хранимой? Не знаю насчет самого термина, но не сомневаюсь, что ты понял о чем мой вопрос. :)
Так можно с функциями работать или нельзя? И если да, то как?


 
Razrab7 ©   (2008-09-05 15:27) [4]

Медвежонок Пятачок

select myfrunctionname from dual

Ой-ёёё!!! Неужели все так просто? Туплю!


 
Правильный$Вася   (2008-09-05 15:33) [5]


> Ega23 ©   (05.09.08 15:18) [1]

это то же самое, что ХП, только ее можно использовать в конструкции a:=b(x)
ну, и в оракле она таки create function xxx


 
Razrab7 ©   (2008-09-05 15:44) [6]

Медвежонок Пятачок

А не, постой, не туплю! :) Дело в том, что в этой функции используются DML команды, а их нельзя из Select-а запускать, выдается ошибка. А жаль. :(


 
Правильный$Вася   (2008-09-05 15:47) [7]


>  в этой функции используются DML команды, а их нельзя из
> Select-а запускать

можно заюзать автономную транзакцию, но там много геморроя с бумерангами


 
Игорь Шевченко ©   (2008-09-05 15:49) [8]

begin
 :res := myfunc (:foo, :bar);
end;


 
Razrab7 ©   (2008-09-05 15:54) [9]

Правильный$Вася

Не, в моем случае быстрее на процедуру с выходным параметром переписать. Но вопрос принципа - через ADOStoredProc выходит никак? Может тогда есть какие-то другие компоненты? Мало ли в будущем пригодится.


 
Медвежонок Пятачок ©   (2008-09-05 15:58) [10]

Дело в том, что в этой функции используются DML команды,

тогда анонимный блок рисуй. если его конечно адо проглотит.


 
Медвежонок Пятачок ©   (2008-09-05 15:59) [11]

. Но вопрос принципа - через ADOStoredProc выходит никак?

новая процедура-обертка вокруг функции.



Страницы: 1 вся ветка

Текущий архив: 2009.05.17;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
2-1238860311
worldmen
2009-04-04 19:51
2009.05.17
Опять "Неверный дескриптор"


3-1220954949
Forbi
2008-09-09 14:09
2009.05.17
Количество строк после селективного запроса


2-1238660648
DmitriyR
2009-04-02 12:24
2009.05.17
Си и Delphi


3-1220794694
kaif
2008-09-07 17:38
2009.05.17
Вопросы по трриггерам MS SQL


15-1237307414
KSergey
2009-03-17 19:30
2009.05.17
Посетил концерт Гару