資料庫 儲存過程
阿新 • • 發佈:2020-11-23
當一個T-SQL程式塊需要多次執行時,應該考慮使用儲存過程來解決。T-SQL中的儲存過程,非常類似於高階語言中的方法,它可以重複呼叫。當儲存過程執行一次後,可以將語句放入快取中,這樣下次執行的時候直接使用快取中的語句,通過這種方式可以提高儲存過程的效能。
儲存過程特點
建立無參儲存過程
--建立一個儲存過程,儲存所有性別為女的學生記錄
USE jccode
GO
CREATE PROC MyProc
AS
SELECT * FROM Student WHERE Ssex='女'
GO
--使用建立的儲存過程,既輸出
EXEC MyProc
儲存過程的各種用途
建立帶有引數的儲存過程
--輸出成績大於給定課程號的給定成績的學生名字 GO CREATE PROC test @temp int,--成績 @s int --課程號 AS SELECT Student.Sname FROM SC,Student WHERE SC.Sno=Student.Sno AND SC.Grade>=@temp AND SC.Cno=@s GO EXEC test 80,2 --EXEC test 2,80就是錯的! --EXEC test @temp=80,@s=2也可以
設定輸出引數的儲存過程
GO CREATE PROC query ( @sno varchar(15), @sn nvarchar(10) OUTPUT, @sx nvarchar(5) OUTPUT ) AS SELECT @sn=Student.Sname,@sx=Student.Ssex FROM Student WHERE Student.Sno=@sno GO DECLARE @n1 nvarchar(10) DECLARE @n2 nvarchar(5) EXEC query '201215121',@n1 OUTPUT,@n2 OUTPUT SELECT @n1,@n2
儲存過程的優點與缺點