文章目錄
實際專案中會遇到很多複雜或重複的邏輯,這時候會用到儲存過程,今天就來記錄一下,儲存過程的使用方法,以免忘記
儲存過程的好處:
1.由於資料庫執行動作時,是先編譯後執行的。然而儲存過程是乙個編譯過的**塊,所以執行效率要比t-sql語句高。
2.乙個儲存過程在程式在網路中互動時可以替代大堆的t-sql語句,所以也能降低網路的通訊量,提高通訊速率。
3.通過儲存過程能夠使沒有許可權的使用者在控制之下間接地訪問資料庫,從而確保資料的安全。
小結:總之儲存過程是好東西,在做專案時屬於必備利器,下面介紹儲存過程的基本語法。
--判斷否存在改儲存過程,如存在則刪除
if exists (select * from sys.procedures where name='selq')
drop proc selq
go--簡單的查詢儲存過程:乙個簡單的查詢儲存過程
create proc selq
asselect * from student
goexec selq
--帶引數的儲存過程 :乙個根據id刪除的儲存過程
if exists (select * from sys.procedures where name='del')
drop proc del
gocreate proc del(@bookid int)
asdelete from bookinfo where bookid=@bookid
goexec del 4
**如下(示例):
begin tran表示開始事務,
commit tran表示提交事務,
rollback tran表示回滾事物
create procedure [dbo].[finished]
@id varchar(50),
@uid varchar(50),
@money int
asbegin tran
begin try
declare @user1 select money from user where id = @id
if(@user1 > @money)
begin
update user set money = money - @money where id = @id
update user set money = money + @money where id = @uid
end
end try
begin catch
rollback tran;
end catch
commit tran;
go
資料庫 儲存過程
儲存過程,stored procedure,是在大型資料庫系統中,一組為了完成特定功能的sql語句集,經編譯後儲存在資料庫中,使用者通過指定儲存過程的名字並給出引數 如果該儲存過程帶有引數 來執行它。模擬於c中的函式。mysql與sqlserver是不同的。建立儲存過程 conn getconnec...
資料庫 儲存過程
在資料庫中,儲存過程屬於一種物件,是一種高效的安全的訪問資料庫的方法。下邊我們就資料庫中的儲存過程總結它的相關知識點。我們分為概述,實現和管理三個方面來總結。一,儲存過程的概述 1,概念 儲存過程 storedprocedure 是在資料庫伺服器端執行的一組t sql語句的集合,經編譯後存放在資料庫...
資料庫 儲存過程
一組為了完成特定功能的sql 語句集,經編譯後儲存在資料庫中。使用者通過指定儲存過程的名字並給出引數 如果有引數 來執行它。系統儲存過程 以sp 開頭,用來進行系統的各項設定.取得資訊.相關管理工作。本地儲存過程 使用者建立的儲存過程是由使用者建立並完成某一特定功能的儲存過程,這跟各種程式語言裡使用...