日期:2014-05-18  浏览次数:20582 次

刚学习存储过程,遇到的麻烦。帮帮忙。先谢了
存储过程1我return @sms

我要在存储过程2中用@sms怎么写啊并且要把@sms和别的字符串合在一起
2中我要怎么接收1中返回的值并且使用他?

过程如下
CREATE PROCEDURE proc_one

AS
declare @times varchar(20)
declare @sms varchar(20)
select @times=(convert(varchar(12),getdate(),108) ) 

if @times between '22:00:00' and '23:00:59'
begin
set @sms='你好'
return @sms
  end

else
begin
set @sms='我好'
return @sms
end
GO

------------------------

CREATE PROCEDURE proc_two

AS
  declare @content varchar(20)
exec proc_time
  我要把@content和proc_one中返回的@sms叠加怎么写
GO



------解决方案--------------------
第一个要改一下吧,如下
SQL code

CREATE PROCEDURE proc_one @sms varchar(20) OUTPUT 

AS 
declare @times varchar(20) 

select @times=(convert(varchar(12),getdate(),108) ) 

if @times between '22:00:00' and '23:00:59' 
  begin 
set @sms='你好' 
          end 

else 
  begin 
set @sms='我好' 
end

------解决方案--------------------
探讨
第一个要改一下吧,如下

SQL code
CREATE PROCEDURE proc_one @sms varchar(20) OUTPUT

AS
declare @times varchar(20)

select @times=(convert(varchar(12),getdate(),108) )

if @times between '22:00:00' and '23:00:59'
begin
set @sms='你好'
end

else
begin
set @sms='我好'
end



第二个这么写,如下,不过你的@content值从哪取呀,我这里设成了输入参数

SQL…