1. 程式人生 > 實用技巧 >資料庫的儲存過程的使用場景?

資料庫的儲存過程的使用場景?

資料庫儲存過程具有如下優點:

1、儲存過程只在建立時進行編譯,以後每次執行儲存過程都不需再重新編譯,而一般 SQL 語句每執行一次就編譯一次,因此使用儲存過程可以大大提高資料庫執行速度。

2、通常,複雜的業務邏輯需要多條 SQL 語句。這些語句要分別地從客戶機發送到伺服器,當客戶機和伺服器之間的操作很多時,將產生大量的網路傳輸。如果將這些操作放在一個儲存過程中,那麼客戶機和伺服器之間的網路傳輸就會大大減少,降低了網路負載。

3、儲存過程建立一次便可以重複使用,從而可以減少資料庫開發人員的工作量。

4、安全性高,儲存過程可以遮蔽對底層資料庫物件的直接訪問,使用 EXECUTE 許可權呼叫儲存過程,無需擁有訪問底層資料庫物件的顯式許可權。

正是由於儲存過程的上述優點,目前常用的資料庫都支援儲存過程,例如 IBM DB2,Microsoft SQL Server,Oracle,Access 等,開源資料庫系統 MySQL 也在 5.0 的時候實現了對儲存過程的支援。

定義儲存過程:

create procedure insert_Student (_name varchar(50),_age int ,out _id int)
begin
    insert into student value(null,_name,_age);
    select max(stuId) into _id from student;
end
; call insert_Student('wfz',23,@id); select @id;