Можете ли вы вызвать хранимую процедуру SQL, которая возвращает набор записей и загружает эти значения в переменные? - PullRequest
2 голосов
/ 18 марта 2010

Пожалуйста, рассмотрите следующую таблицу SQL Server и хранимую процедуру.

create table customers(cusnum int, cusname varchar(50))

insert into customers(cusnum, cusname) values(1, 'Ken')
insert into customers(cusnum, cusname) values (2, 'Violet') --The Wife

create procedure getcus 
  @cusnum int
as 
Begin
   select cusname
   from customers (nolock)
   where cusnum = @cusnum
End

Вы знаете, как написать код T-SQL следующим образом:

declare @cusname varchar(50)

select @cusname = cusname
from customers 
where cusnum = 1

Могу ли я сделать это с помощью моей хранимой процедуры?

например, код будет выглядеть так:

declare @cusnum int
declare @cusname varchar(50)

set @cusnum = 1

exec @cusname = cusname pbogetcus @cusnum

Спасибо заранее.

1 Ответ

3 голосов
/ 18 марта 2010

Нет, вы не можете возвращать такие значения.

Вам необходимо использовать параметры вывода: MSDN .

EDIT:

Это может быть лучшей ссылкой:

Команда SQL

Ознакомьтесь с разделом о середине пути: Использование переменных OUTPUT

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...