日期:2014-05-17  浏览次数:20543 次

转型为什么不成功,求解?
create proc Countstu
@num int output,
@sex char(5) 
as
  select @num=COUNT(StuID) from dbo.StuInfom where StuSex=@sex
go

declare @fsum int
set @fsum=0
exec dbo.Countstu '女' ,@fsum output
print '女生的总人数为:'+convert(varchar,@fsum)

报错:
消息 8114,级别 16,状态 5,过程 Countstu,第 0 行
从数据类型 varchar 转换为 int 时出错。
女生的总人数为:0

各位大侠们,求解?谢谢!

------解决方案--------------------
SQL code
--参数的顺序错了
declare @fsum int
set @fsum=0
exec dbo.Countstu @fsum output,'女'