欢迎来到天天文库
浏览记录
ID:57690687
大小:18.50 KB
页数:2页
时间:2020-09-01
《SQL创建简单的存储过程.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、首先说明如何创建存储过程:CREATEPROCEDUERmy_pro@inputDatevarchar,//声明输入变量@Resultvarchar(255)output//声明输出变量ASdeclare@variable1varchar(255)//声明varchar变量declare@variable2int//声明整形变量BEGINIF...(条件)BEGIN....(执行内容)ENDELSEBEGIN....(执行内容)ENDEND以上就是创建一个简单的存储过程方法。二、删除存储过程DROPPROCEDUREmy_pro三、执行存储过程(
2、1)执行没有参数的存储过程:EXECUTEmy_pro(2)执行有参数的存储过程:EXECUTEmy_pro'输入变量'(1)执行有参数且有返回值(即有输出变量)的存储过程:declare@Resultvarchar(1024)//声明输出变量EXECUTEmy_pro'输入变量'@Resultoutput//让该存储过程输出值保存到@Result中select@Resultasresult//查询结果返回四、例子下面需要将查询多条记录结果,使用一条返回值进行返回。例如:有表Test中,其中有两个字段为Test01与Test02,把Test01>10
3、000的记录,让查询Test02结果进行合并,合并成一条记录来返回。则返回结果为:WSXEDCRFVTGB.Test01Test0210000QAZ10001WSX10002EDC10003RFV10004TGB那么,使用存储过程,使用存储过程中的游标,可以进行for循环来进行多条记录的合并。将可以解决这个问题。具体存储过程如下:DROPPORCEDUREmy_Cursor//习惯性,创建之前,先看看该存储过程是否存在CREATEPROCEDUREmy_Cursor@idint,//声明输入变量@Resultvarchar(255)output//声
4、明输出变量,注意一定要有output关键字,否则默认为输入变量ASDeclarecity_cursorcursorfor–声明游标变量Select[Test01]fromTestwhereTest01>@id–其中@id为输入变量Set@Result=‘’–设置变量@Result值Declare@Fieldint–声明临时存放查询到的Test01的变量Opencity_cursor–打开游标Fetchnextfromcity_cursorinto@Field–将实际Test01赋给变量,进行循环While(@@fetch_status=0)–循环开始
5、BEGINIf@Result=‘’BEGINSelect@Result=Test02fromTestwhereTest01=@FieldENDELSEBEGINSelect@Result=@Result+‘,’+Test02fromTestwhereTest01=@FieldENDFetchnextfromcity_cursorinto@Field–循环下一个Test01ENDClosecity_cursor–关闭游标Deallocatecity_cursor–释放游标引用GO(结束)以下是执行Declare@Resultvarchar(1024)E
6、XECUTEmy_pro10000,@Resultoutput–output关键字一定得写,如果是多个输入参数,则使用“,”号来区分Select@Resultasresult–查询结果
此文档下载收益归作者所有