SQL Server 2005 創立簡略的存儲進程--總結剖析。本站提示廣大學習愛好者:(SQL Server 2005 創立簡略的存儲進程--總結剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL Server 2005 創立簡略的存儲進程--總結剖析正文
比來因為任務須要,簡略懂得了下SQL Server 2005 數據庫創立簡略的在存儲進程。
1、起首解釋若何創立存儲進程:
CREATE PROCEDUER my_pro @inputDate varchar ,
//聲明輸出變量 @Result varchar(255) output
//聲明輸入變量 AS declare @variable1 varchar(255)
//聲明varchar變量 declare @variable2 int
//聲明整形變量 BEGIN IF ...(前提) BEGIN ....(履行內容) END ELSE BEGIN ....(履行內容) END END
以上就是創立一個簡略的存儲進程辦法。
2、刪除存儲進程 DROP PROCEDURE my_pro
3、履行存儲進程
(1)履行沒有參數的存儲進程:EXECUTE my_pro
(2)履行有參數的存儲進程:
EXECUTE my_pro '輸出變量'
(1)履行有參數且有前往值(即有輸入變量)的存儲進程:
declare @Result varchar(1024)
//聲明輸入變量 EXECUTE my_pro '輸出變量' @Result output
//讓該存儲進程輸入值保留到@Result中 select @Result as result
//查詢成果前往
4、例子上面須要將查詢多筆記錄成果,應用一條前往值停止前往。
例如:有表Test中,個中有兩個字段為Test01與Test02,把Test01 > 10000的記載,讓查詢Test02成果停止歸並,歸並成一筆記錄來前往。
則前往成果為:WSXEDCRFVTGB. Test01 Test02 10000 QAZ 10001 WSX 10002 EDC 10003 RFV 10004 TGB 那末,應用存儲進程,應用存儲進程中的游標,可以停止for輪回來停止多筆記錄的歸並。將可以處理這個成績。
詳細存儲進程以下:
DROP PORCEDURE my_Cursor
//習氣性,創立之前,先看看該存儲進程能否存在 CREATE PROCEDURE my_Cursor @id int ,
//聲明輸出變量
@Result varchar(255) output
//聲明輸入變量,留意必定要有output症結字,不然默許為輸出變量 AS Declare city_cursor cursor for
–聲明游標變量 Select [Test01] from Test where Test01 > @id
–個中@id為輸出變量 Set @Result = ‘'
–設置變量@Result值 Declare @Field int
–聲明暫時寄存查詢到的Test01的變量 Open city_cursor
–翻開游標 Fetch next from city_cursor into @Field
–將現實Test01賦給變量,停止輪回 While(@@fetch_status=0)
–輪回開端 BEGIN If @Result = ‘' BEGIN Select @Result = Test02 from Test where Test01 = @Field END ELSE BEGIN Select @Result = @Result + ‘,' + Test02 from Test where Test01 = @Field END Fetch next from city_cursor into @Field
–輪回下一個Test01 END Close city_cursor
–封閉游標 Deallocate city_cursor
–釋放游標援用 GO (停止) 以下是履行 Declare @Result varchar(1024) EXECUTE my_pro 10000 ,@Result output
–output症結字必定得寫,假如是多個輸出參數,則應用“,”號來辨別 Select @Result as result –查詢成果