Главная страница
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.014 c
2-1238660648
DmitriyR
2009-04-02 12:24
2009.05.17
Си и Delphi


15-1237292509
Unknown user
2009-03-17 15:21
2009.05.17
Просмотр связей между модулями в проектах Delphi


15-1234352551
Правильный$Вася
2009-02-11 14:42
2009.05.17
2 вопроса по установке D2009


15-1236893401
Юрий
2009-03-13 00:30
2009.05.17
С днем рождения ! 13 марта 2009 пятница


2-1238773381
Andrey K
2009-04-03 19:43
2009.05.17
Undo в TMemo