Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Использование значения, возвращаемого процедурой [MSSQL]


Calm ©   (2002-11-21 13:40:00) 

И еще раз (третий на сегодня) простите за простой вопрос.

Как обратится к значению, которое возвращает моя процедура?
Она возвращает одноцелое число - результат запроса.

Заранее благодарен за ответы.

P.S. Нужно срочно. Учиться приходиться по ходу дела :(


Calm   (2002-11-21 15:10:00) [1]

Всем спасибо, кажется разобрался...


3JIA9I CyKA   (2002-11-21 15:05:00) [2]


use pubs
go

create procedure ZS1
@au_id varchar(11),
@au_lname varchar(40) output,
@au_fname varchar(20) output
as
set nocount on
select
@au_lname = null,
@au_fname = null

select
@au_lname = au_lname,
@au_fname = au_fname
from authors
where au_id = @au_id
go

declare
@lname varchar(40),
@fname varchar(20)

exec ZS1
"172-32-1176",
@lname output,
@fname output

select
au_lname = @lname,
au_fname = @fname
drop procedure ZS1
go


Calm   (2002-11-21 14:22:00) [3]

2 KSergey © (21.11.02 14:19)
Да, интересует, как это в SQL.

> А как это, интересно, процедура у вас возвращает 2 числа?

Делается выборка (select), выбираются два столбца типа int. Заведомо известно, что будет выбрана только одна запись.


KSergey   (2002-11-21 14:19:00) [4]

> Calm © (21.11.02 13:53)
> Кстати, а если процедура возвращает не одно, а два числа.
> Тогда как быть?

А как это, интересно, процедура у вас возвращает 2 числа?


KSergey   (2002-11-21 14:18:00) [5]

Речь как это в SQL (тогда см. 3JIA9I CyKA) или она вызывается из дельфи? И каким образом доступ? Если через ADO - там, если не ошибаюсь, есть в параметрах виды "входнй", "выходной", "возвращаемое сначение" - вот его то и надо.


Calm   (2002-11-21 13:53:00) [6]

2 3JIA9I CyKA © (21.11.02 13:44)
Спасибо!
Но что означает третья строка? У меня все работет и без нее.

Кстати, а если процедура возвращает не одно, а два числа. Тогда как быть?


3JIA9I CyKA   (2002-11-21 13:44:00) [7]

declare @jopa int
exec @jopa = MyCoolProc1
select [Bill G] = @jopa


Наверх

Титульная страница Поиск, карта сайта Написать письмо