Главная страница
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.015 c
2-1238553615
novai
2009-04-01 06:40
2009.05.17
Помогите с оптимизацией кода


2-1238744228
olegteacher
2009-04-03 11:37
2009.05.17
Очистка Image


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


2-1238675477
oleg_teacher
2009-04-02 16:31
2009.05.17
Регистр букв


15-1236766098
It's not me
2009-03-11 13:08
2009.05.17
Кто-нибудь замечал, что TidHTTPServer медленно соединяется?