我想从我的存储过程中选择一个变量,这样如果我在ADO.net中使用ExecuteScalar
,我就可以得到变量值。
我的存储过程就是这个
CREATE PROCEDURE dbo.SPListGetID
(
@category varchar(100)
)
AS
declare @maxListId int
set @maxListId=(select max(MaterialId) from tblMaterialLists
where category =@category and mode='1')
set @maxListId=@maxListId+1;
select @maxListId
/* SET NOCOUNT ON */
RETURN
此处不允许select @maxListId
。我该怎么做才能做到这一点?
答案 0 :(得分:2)
尝试使用SET @maxListId=@maxListId+1;
代替@maxListId=@maxListId+1;
答案 1 :(得分:1)
您需要稍微更改语法
select @maxListId= max(MaterialId) where category =@category and mode='1'
答案 2 :(得分:0)
尝试
RETURN @maxListId
而不是
select @maxListId
/* SET NOCOUNT ON */
RETURN
答案 3 :(得分:0)
CREATE PROCEDURE dbo.SPListGetID
(
@category varchar(100)
)
AS
begin
declare @maxListId int
select @maxListId= max(MaterialId) from tblMaterialLists
where category =@category and mode='1'
set @maxListId=@maxListId+1;
end