如何在sqlserver存储过程中输出参数,语句是啥,我不用输出参数,我只是在体内输出语句,请问是啥??

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在sqlserver存储过程中输出参数,语句是啥,我不用输出参数,我只是在体内输出语句,请问是啥??相关的知识,希望对你有一定的参考价值。

参考技术A 在定义时定义一个ouput参数,如以下存储过程根据时间产生一个唯一ID
CREATE PROCEDURE [getid](@id char(17) OUTPUT)--产生唯一码
AS
DECLARE @a datetime
select @a=getdate()
DECLARE @time1 char(10)
DECLARE @time2 char(10)
DECLARE @time3 char(10)
DECLARE @time4 char(10)
DECLARE @time5 char(10)
DECLARE @time6 char(10)
DECLARE @time7 char(10)
Select @time1=str(Datename(year,@a))
Select @time2=str(Datename(month,@a))
if Datename(month,@a)<10 select @time2='0'+rtrim(ltrim(@time2))
Select @time3=str(Datename(day,@a))
if Datename(day,@a)<10 select @time3='0'+rtrim(ltrim(@time3))
select @time4=str(Datename(hour,@a))
if Datename(hour,@a)<10 select @time4='0'+rtrim(ltrim(@time4))
Select @time5=str(Datename(minute,@a))
if Datename(minute,@a)<10 select @time5='0'+rtrim(ltrim(@time5))
Select @time6=str(Datename(second,@a))
if Datename(second,@a)<10 select @time6='0'+rtrim(ltrim(@time6))
Select @time7=str(Datename(Millisecond,@a))
if Datename(Millisecond,@a)<10 select @time7='0'+rtrim(ltrim(@time7))
if Datename(Millisecond,@a)<100 select @time7='0'+rtrim(ltrim(@time7))
select @id=ltrim(rtrim(@time1))+ltrim(rtrim(@time2))+ltrim(rtrim(@time3))+ltrim(rtrim(@time4))+ltrim(rtrim(@time5))+ltrim(rtrim(@time6))+ltrim(rtrim(@time7))
GO
在其它存储过程中用下例语句调用以上这个存储过程,如下
DECLARE @id char(17)
EXEC [getid] @id OUTPUT
这样@id就可以得到getid的返回值了
参考技术B exec 存储过程名 参数=*

比如预先设置的参数为 @yy datetime 存储过程名为 procedure_test
那么语句就是
exec procedure_test @yy='日期'

其中日期是你要输入的条件本回答被提问者和网友采纳
参考技术C 创建存储过程时,在需要输出的参数后面 加上output ,
例“ create pro [dbo].[run]
@a varchar(50) output
select @a=[a1] from [Table] where ....

执行存储过程 declare a varchar(50)
exec [run] a
select a

你要输出语句的话,将要输出的参数等于你想要的语句即可追问

output不是输出参数吗,我的意思是在存储过程体内输出语句,类型oracle存储过程中的dbms.output.printline('xxxx');,明白否?在sqlserver中有没有类似这样的语句。。、。。

追答

print 语句

参考技术D 输出就用 return 不输出 用关键字 void 第5个回答  2011-04-28 print 'aaaaaaaaaaaaa'
如果是参数就是
print @aa

以上是关于如何在sqlserver存储过程中输出参数,语句是啥,我不用输出参数,我只是在体内输出语句,请问是啥??的主要内容,如果未能解决你的问题,请参考以下文章

sql存储过程有什么用

sql server存储过程如何输出结果集

sql server中怎样创建保存数据的存储过程

Sql server2012存储过程参数传递null值,如何判定这个参数是null

sql server 中 一个要输入参数和输出参数的存储过程。

如何写sqlserver2000存储过程?用于批量录入数据,求解