Форум: "Базы";
Текущий архив: 2002.07.01;
Скачать: [xml.tar.bz2];
ВнизКак вернуть несколько значений из процедуры/функции в ? Найти похожие ветки
← →
Oleg_EM (2002-06-04 09:41) [0]в IB select * from MyFunc(1)
вернет все значения, которые описаны в процедуре
а как тоже самое сделать в Oracle 7 ?
P.S. значения вернуть нада не наклиента,
а в другую процедуру ;-)
← →
Johnmen (2002-06-04 09:50) [1]Непонятно, в чем проблема то...
Описываешь параметры процедуры как OUT и все...
← →
Johnny Smith (2002-06-04 10:07) [2]2Oleg_EM © (04.06.02 09:41)
Аналогичные вопросы встречаются довольно часто. Ответ один и тот же: механизма возврата набора строк из хранимой процедуры, аналогичного IB, в Оракле (да и в др. СУБД) нет.
Поэтому существует куча обходных путей.
Один из них - работа с пакетной переменной типа Table Of Record: она создается и заполняется одной процедурой пакета, а результаты из нее вытаскиваются селектом другой функции (функций) того же пакета.
← →
Oleg_EM (2002-06-04 10:17) [3]2Johnhy Smith спасиба, идея понятна !
← →
Илья_____ (2002-06-04 10:58) [4]Если нужно выводить данные в DBGrid, то можно из функции возвращать курсор. На ф-цию вешается TStoredProc, а на неё уже DBGrid. Я так обходил.... :)
← →
Oleg_EM (2002-06-04 11:39) [5]да нет, мне нада в одной процедуре получать несколько значений из другой процедуры, передавая ей параметры, можно конечно и в одну процедуру все впихнуть, но не читаемо будет :-)
← →
Sergey13 (2002-06-04 11:52) [6]Так в процедуру курсор передать еще проще. В первой открыл, во второй прочитал. Но все это желательно делать в пакете. Проще.
← →
PSERG (2002-06-05 14:44) [7]Если у тебя Oracle 8-9 то можно воспользоваться объектными типами и Nested Table. Если заинтересуешься напиши на мыло, раскажу подробнее.
← →
Johnny Smith (2002-06-05 15:11) [8]2PSERG (05.06.02 14:44)
Функция (причем не важно, в каком Оракле) на может возвращать иных значений, кроме Varchar, Number и Date...
← →
Yuvich (2002-06-06 14:05) [9]> Johnny Smith
Ну почему же? Функция возвращает все типы, поддерживаемые PL/SQL, в том числе и user defined, например типа ref cursor.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.07.01;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c