建立儲存過程

2021-09-12 12:22:03 字數 2182 閱讀 2077

一:沒有引數的儲存過程

create procedure select_all

asbegin

select * from t_login1

endgo

二:帶引數的儲存過程

create procedure select_name

@id uniqueidentifier
as

begin

select * from t_login1 where psn0001a=@id

endgo

三:帶萬用字元引數儲存過程

alter proc proc_findstudentbyname

@name nvarchar(10)=『f%』

asselect * from t_login1 where psn0001a like @name

goexec proc_findstudentbyname 『f%』

四:帶預設值的引數的儲存過程

create proc sele_name

@name nvarchar(10)=『hong3』

asselect * from t_login1 where psn0002a=@name

exec sele_name 『lk』

exec sele_name

五:帶輸出引數的儲存過程

create proc [dbo].[p_selectname]

@name nvarchar(10),

@num int output

asselect @num=count(psn0001a) from t_login1 where psn0002a=@name

declare @num int

exec p_selectname 『lk』,@num output

print @num

declare @num1 int

exec p_selectname @name=『lk』,@num=@num1 output

print @num1

六:臨時儲存過程

create proc #p_selectname2

asselect count(psn0001a) from t_login1 where psn0002a=『lk』

exec #p_selectname2

七:儲存過程的巢狀

alter proc #p_selectname2

asselect count(psn0001a) from t_login1 where psn0002a=『lk』

exec sele_name

exec #p_selectname2

八:不快取的儲存過程

if (object_id(『proc_temp』, 『p』) is not null)

drop proc proc_temp1–如果存在不為空,釋放掉

gocreate proc proc_temp1

with recompile

asselect * from t_login1

goexec proc_temp1;

九:加密儲存過程(無法檢視儲存過程的**)

if (object_id(『proc_temp_encryption』, 『p』) is not

null)

drop proc proc_temp_encryption

gocreate proc proc_temp_encryption

with encryption

asselect * from t_login1;

goexec proc_temp_encryption;

exec sp_helptext 『proc_temp1』;

exec sp_helptext 『proc_temp_encryption』;

十:儲存過程中使用if…else

create procedure pro_numtoname

@num int ,

@str nvarchar(5) output

asif @num=11

begin

set @str=『wang』

endelse

begin

set @str=『qita』

end生活中的不便,用軟體解決,學而不用,白學了-----紅馬車

建立儲存過程

execute pro book 當你執行該儲存過程時,所有包括在其中的sql語句都會執行,在上面的例子中,會返回所有在forum表中的記錄。當在批處理中的第乙個語句是呼叫儲存過程時,你並不需要使用execute語句。你可以簡單地提供儲存過程的名稱來執行儲存過程。比如在isql w中,可以象下面所示...

建立儲存過程

create procedure dbo procgetdata days int asbegin set nocount on added to prevent extra result sets from interfering with select statements.set nocoun...

建立儲存過程

在ms sql server 2000 中,建立乙個儲存過程有兩種方法 一種是使用transaction sql 命令create procedure,另一種是使用圖形化管理工具enterprise manager。用transaction sql 建立儲存過程是一種較為快速的方法,但對於初學者,使...