我无法执行我的SP(当我键入spGetNamebyID 1时的示例)
这是我的代码
alter proc spGetNameByID
@ID int,
@Name varchar(50) output,
@Gender varchar (50) output
as
begin
Select @Name = Name, @Gender = Gender from tblEmployee where ID = @ID
end
Declare @Name varchar(50), @Gender varchar(50)
Execute spGetNameByID 2, @Name out, @Gender out
Print 'Name is ' + @Name + ' Gender ' + @Gender
我收到此错误消息
消息201,级别16,状态4,过程spGetNameByID,行0过程 或函数'spGetNameByID'需要参数'@Name',而不是 提供。
答案 0 :(得分:0)
试试这个
Declare @Name varchar(50), @Gender varchar(50)
exec spGetNameByID @ID = 2, @Name = @Name output, @Gender = @Gender output
您也可以右键单击Sql Management Studio中的存储过程,执行该过程并显示查询。
答案 1 :(得分:0)
我想我明白了。您必须包含声明和打印
Declare @Name1 varchar(50), @Gender1 varchar(50)
Execute spGetNameByID 2, @Name1 out, @Gender1 out
Print 'Name is ' + @Name1 + ' Gender ' + @Gender1
答案 2 :(得分:0)
尝试像这样编写执行行
Execute spGetNameByID @ID = 2
并遗漏
, @Name = @Name output, @Gender = @Gender output