Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.14;
Скачать: 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 вся ветка

Текущий архив: 2007.01.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.045 c
15-1166600761
infom
2006-12-20 10:46
2007.01.14
Сжатие картинок в документах MS Word


11-1143440579
BaryVetaL
2006-03-27 10:22
2007.01.14
Хорошая ли идея?


15-1166110968
Eraser
2006-12-14 18:42
2007.01.14
Редактор ASCII графики


2-1166887149
BanserAnt
2006-12-23 18:19
2007.01.14
Кто находится в чате?


3-1161844347
Alexey123
2006-10-26 10:32
2007.01.14
Скроллинги в DBGrid