powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вызов процедуры в цикле.
14 сообщений из 14, страница 1 из 1
Вызов процедуры в цикле.
    #39759285
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. Вопрос к знатока. Есть процедура geteRate(rateType, currencyId). Возвращает она 5 разных типов данных (полей).
Вызывается она допустим 10 раз. Нужно передать список параметров(или выбрать из таблицы) и вызвать эту процедуру и вернуть результат таблицой. Помогите, посоветуйте. С PLSQL работаю 1й день.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759298
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex2019С PLSQL работаю 1й день.Сперва надо изучить инструкцию к языку.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759302
MazoHist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идею можно посмотреть вот здесь (первый вариант), но поскольку не требуется использование функции в select или where то тип можно объявить локально в пакете (если функция входит в пакет) и не делать pipelined.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759313
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MazoHist,
Дело такое, что у меня нет доступа к серверу и коду. Могу только отсылать обертку с sql.
<sql>
declare
variables
begin
вызов процедуры
end;
</sql>
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759316
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Elic,
Да, нужно. Но еще нужно быстро допилить таску, а копать куда не знаю. И учить все с нуля долго. Доку почитал, синтаксис понял.
Вот придумать как сделать без опыта не могу.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759325
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возможно можно объявить таблицу с нужными полями. и в цикле вставлять в неё данный из процедуры.?
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759372
MazoHist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex2019Возможно можно объявить таблицу с нужными полями. и в цикле вставлять в неё данный из процедуры.?
Если цель "вернуть результат таблицей" то можно так. Если же цель "за один вызов процедуры getRate получать данные по N валютам" то переделать процедуру чтобы она работала с таблицами на вход и выход.
PS: это часом не КИАС?
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759401
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MazoHistAlex2019Возможно можно объявить таблицу с нужными полями. и в цикле вставлять в неё данный из процедуры.?
Если цель "вернуть результат таблицей" то можно так. Если же цель "за один вызов процедуры getRate получать данные по N валютам" то переделать процедуру чтобы она работала с таблицами на вход и выход.
PS: это часом не КИАС?

Это WSO2, разработка DataService. для вызова оракл есть только пакет и процедура с параметрами.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759403
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MazoHist
PS: это часом не КИАС?
Цель заменить вызов процедуры 10 раз одним. Т.е. если вызывать с параметром id = 1,4, 5, 54, .... А нужно сделать: получить селектом
все id и вернуть результат за один раз списком. <listRate><rate>32</rate><rate>23</rate></listRate>. Как то так.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759415
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex2019MazoHistPS: это часом не КИАС?
Цель заменить вызов процедуры 10 раз одним. Т.е. если вызывать с параметром id = 1,4, 5, 54, .... А нужно сделать: получить селектом
все id и вернуть результат за один раз списком. <listRate><rate>32</rate><rate>23</rate></listRate>. Как то так.

какая версия БД?

ps
в древних версиях процедуру селектом не вызвать, нужна функция обгортка

.....
stax
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759434
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Staxкакая версия БД?

ps
в древних версиях процедуру селектом не вызвать, нужна функция обгортка

.....
staxпохоже, 11.2 уже достаточно древняя
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759542
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andreymxStaxкакая версия БД?

ps
в древних версиях процедуру селектом не вызвать, нужна функция обгортка

.....
staxпохоже, 11.2 уже достаточно древняя

Version 11.2.0.4.0. Насколько я понял.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759806
Alex2019
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. А что делается с кодом на серваке бд если отправлять такую штуку.
<sql>
DECLARE

BEGIN

creator.alfa_proc_some_rate(
a => p_a,
b => o_b,
c => o_c,
d => o_d,
);
? := o_b;
? := o_c;
? := o_d;
END;
</sql>
И как обьявить таблицу/табличную переменную, а то у меня выдает ошибки, если в декларе секции обьявить таблицу.
...
Рейтинг: 0 / 0
Вызов процедуры в цикле.
    #39759812
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex2019,

desc creator.alfa_proc_some_rate

.....
stax
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вызов процедуры в цикле.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]