Вниз
Скачать: CL | DM;

Возврат значений из хранимой процедуры   Найти похожие ветки 

← →
Ольга   (2006-10-26 14:29) [0]

В процедуре вычисляется куча значений. Как красиво передать их в программу?


← →
stone ©   (2006-10-26 14:42) [1]

жирным шрифтом ;)


← →
dr Gonzo ©   (2006-10-26 14:43) [2]

Вернуть обычную таблицу:

SELECT 1                   AS ParamID,
          @ParamValue1 AS ParamValue
UNION  
SELECT 2                   AS ParamID,
          @ParamValue2 AS ParamValue
...

@ParamValue1, @ParamValue2 - рассчётные данные

Хорошо подходт для тех случаев, когда возвращаемые значения одного типа. Если нет, конвертить например в VarChar, что уже не так красиво.


← →
Stanislav ©   (2006-10-26 14:45) [3]

Ну или так
EXEC MYSP ... :PAR1 OUT, :PAR2 OUT
AdoQuery.execute;
A:=AdoQuery.Parameters[n].Value


← →
dr Gonzo ©   (2006-10-26 14:46) [4]

Еще как вариант -> походу вычислений этих значений просто выбивать их
SELECT @ParamValue1 AS  ParamValue1

Потом ловить в Delphi через NextRecordSet. хорош когда разнотипные значения возвращаются.


← →
evvcom ©   (2006-10-26 16:04) [5]

> [2] dr Gonzo ©   (26.10.06 14:43)

Если уж так, то UNION ALL надо использовать. А если не так, то чем тебе
SELECT Val1, Val2, Val3, ...
не понравилось? А раз уж речь идет о возвращаемых параметрах, то логичнее [3] сделать.


← →
dr Gonzo ©   (2006-10-26 18:18) [6]

2 evvcom ©

ParamID - обеспечивает уникальность :) Т.е привязка к значению идет как раз по ParamID.

SELECT Val1, Val2, Val3 - то же вариант.

Через ОUT - не всегда удобно использовать в отчётах.


← →
evvcom ©   (2006-10-27 09:19) [7]

> [6] dr Gonzo ©   (26.10.06 18:18)
> ParamID - обеспечивает уникальность :)

А Var1, Var2, Var3 уже не обеспечивают? :)

> Через ОUT - не всегда удобно использовать в отчётах

Ну да. Не обратил внимания, что автор не делает даже намека, зачем ей эти данные.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.03 c
8-1148280272
Тфьу
2006-05-22 10:44
2007.01.14
Проблема с загрузкой JPG. Грузится неверно.


15-1167065954
kkkklal
2006-12-25 19:59
2007.01.14
Opera жрет память.


15-1166554186
cando
2006-12-19 21:49
2007.01.14
пароли и имена подключений


15-1166687290
Pazitron_Brain
2006-12-21 10:48
2007.01.14
Дом-страница


2-1166698756
Gerda
2006-12-21 13:59
2007.01.14
Форма всегда на экране




   Наверх