从SQL存储过程返回连接值

时间:2012-03-04 08:34:25

标签: sql stored-procedures

请告知我从存储过程中获得4/30的返回值。 我已声明一个存储过程,其中包含一个输出参数@result varchar(5)输出且没有输入参数, 我在存储过程中声明了3个变量,如

declare @a float
declare @b float
declare @c varchar  

set @a=4
 set @b=30
set  @c=cast(@a as varchar)+'/'+cast(@b as varchar)

set @result=@c
return @result

存储过程执行并返回4的返回值。 但我需要返回值为4/30。是否有可能获得4/30作为回报值? 请在上面建议我......

实际上我想将@a设置为一个返回浮点数的select查询, 并将@b设置为另一个返回浮点数的select查询..但在上面的sp中只显示了一个例子。请告诉我将返回值设为4/30。

3 个答案:

答案 0 :(得分:2)

您需要指定@c的尺寸。没有大小,它将是varchar(1)

declare @c varchar(5)

答案 1 :(得分:1)

在声明变量@c

时,应指定length参数
declare @c varchar(5)

答案 2 :(得分:0)

在MS中写下查询后,我清楚的是需要指定变量的变量长度.....

declare @a int;
declare @b int;
declare @c varchar(5);
set @a=4;
set @b=30;
SET @c=cast(@a as varchar)+'/'+cast(@b as varchar)
select @c;