儲存過程詳解

2022-07-12 06:21:08 字數 1982 閱讀 5667

1,建立乙個簡單儲存過程

示例:

create procedure user --建立名為user儲存過程

as --指定過程要執行下面操作

select * from tablename

go

2,呼叫儲存過程 

示例:exec user 或者 execute user

執行後結果為:select * from tablename 查詢的結果

3,修改儲存過程

示例:alter procedure 儲存過程名

4,刪除儲存過程

示例:drop procedure 儲存過程名

5,帶乙個引數的儲存過程

示例:

if (exists (select * from sys.objects where name = 'user'))  --如果有user這個儲存過程

drop procedure user --刪除user

gocreate procedure user --建立user儲存過程

(@userid int) --宣告乙個輸入引數

asselect * from stud where studid=@userid; --查詢學生表中輸入的userid的資訊

--執行user 儲存過程

exec user 1; --這裡的1就是userid

6、建立帶返回值的儲存過程

示例:

if (exists (select * from sys.objects where name = 'user'))

drop procedure user

gocreate procedure user(

@username varchar(20),--輸入引數,無預設值

@userid int output --輸入/輸出引數 無預設值,output 返回引數)as

select @userid=studid from stud where studname=@username --通過username找userid

--執行user這個帶返回值的儲存過程

declare @id int --宣告乙個變數用來接收執行儲存過程後的返回值

exec user '李四',@id output --執行儲存過程。@username=李四,@id output:返回值(userid)

select @id as userid ;--as是給返回的列值起乙個名字

7、帶萬用字元的儲存過程

示例:

create procedure user(

@username varchar(20)='%'

@userid int ='%')as

select *from stud where studname like @username

and studid like @userid

exec user '李%','1%' --匹配stud表中姓名李開頭和id為1開頭的學生資訊

8、帶判斷的儲存過程

示例:

if (exists (select * from sys.objects where name = 'user'))

drop procedure user

gocreate procedure user(

@a int,--輸入引數,無預設值

@b int --輸入引數 無預設值,)as

if @a>@b

begin --if語句必須用begin和end

print 'a' --a>b,列印a

endelse if @a<@b

begin

print 'b' --aendelse 

begin

print 'a=b'  --前兩種情況都不滿足,列印a=b

end--執行呼叫儲存過程

exec user 1,1 --這裡a和b都是1,肯定列印a=b

MySQL儲存過程詳解 mysql 儲存過程

儲存過程簡介 我們常用的運算元據庫語言sql語句在執行的時候需要要先編譯,然後執行,而儲存過程 stored procedure 是一組為了完成特定功能的sql語句集,經編譯後儲存在資料庫中,使用者通過指定儲存過程的名字並給定引數 如果該儲存過程帶有引數 來呼叫執行它。乙個儲存過程是乙個可程式設計的...

SQL Server儲存過程詳解

什麼是儲存過程 儲存過程 procedure 類似於c 語言中的方法,它是sql語句和控制流語句的預編譯集合。儲存過程儲存在資料庫內,可由應用程式通過乙個呼叫執行,而且允許使用者宣告變數 邏輯控制語句以及其他強大的程式設計功能。儲存過程可包含邏輯控制語句和資料操作語句,它可以接收引數 輸出引數 返回...

MySql儲存過程詳解

sql語句需要先編譯然後執行,而儲存過程是一組為了完成特定功能的sql語句集,經編譯後儲存在資料庫中,使用者通過指定儲存過程的名字並給定引數 如果該儲存過程帶有引數 來呼叫它。儲存過程是可程式設計的函式,在資料庫中建立並儲存,可以由sql語句和控制結構組成。當想要在不同的應用程式或平台上執行相同的函...