【資料庫】資料庫儲存過程(一)
SQL儲存過程 (一)
SQL 語言是應用程式和 SQL Server 資料庫之間的主要程式設計介面。使用 SQL 語言編寫程式碼時,可用兩種方法儲存和執行程式碼。
一種是在客戶端儲存程式碼,並建立向資料庫管理系統傳送SQL 命令(或 SQL 語句)並處理返回結果的應用程式;
第二種是將這些傳送的SQL 語句儲存在資料庫管理系統中,這些儲存在資料庫管理系統中的 SQL 語句就是儲存過程。
儲存過程與其它程式設計語言中的過程很類似 。
儲存過程的定義
儲存過程(Stored Procedure )是一組完成特定功能的 SQL 語句集,經編譯後儲存在資料庫中 . 它們可以接受引數、輸出引數、返回單個或多個結果集以及返回值
在SQL Server 中使用儲存過程有以下幾個優點。
(1 )儲存過程可以巢狀使用,支援程式碼重用
(2 )儲存過程允許模組化程式設計。儲存過程一旦建立。以後可在程式中呼叫任意多次,可以改進應用程式的可維護性。
(3 )儲存過程可以加快執行速度。比一般 SQL 語句執行速度快。儲存過程被建立時已經被編譯,每次執行時不需要重新編譯,而 SQL 語句每次執行都需要編譯。
(4 )儲存過程可以減少網路通訊流量。一個需數百行 SQL 語句程式碼的操作可以透過一條執行過程程式碼的語句來執行,無需在網路中傳送數百行程式碼。
(5 )儲存過程可以作為安全性機制,增強應用程式的安全性。
使用者自定義儲存過程
擴充套件儲存過程
系統儲存過程
在SQL Server 中,許多管理活動和資訊活動都是透過一種特殊的儲存過程執行的,這種儲存過程稱為系統儲存過程。系統儲存過程主要儲存在 master 資料庫中並以 sp_ 為字首。
系統儲存過程主要是從系統表中獲取資訊,從而為資料庫系統管理員管理SQL Server 提供支援。
建立儲存過程
建立儲存過程的完整語法如下:
CREATE { PROC | PROCEDURE } [schema_name.] procedure_name
[ { @parameter [ type_schema_name. ] data_type }
[ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ]
AS { <sql_statement>
其中各引數的含義如下。
(1 ) schema_name
儲存過程所屬架構的名稱。
(2 ) procedure_name
新儲存過程的名稱。
(3 ) @parameter
過程中的引數。引數名必須以“at” 符號( @ )為字首,在 CREATE PROCEDURE 語句中可以宣告一個或多個引數。
(4 ) [ type_schema_name. ] data_type
引數以及所屬架構的資料型別。
(5 ) VARYING
指定結果集作為輸出引數。僅適用於cursor 引數。
(6 ) default
引數的預設值。
(7 ) OUTPUT
指示引數是輸出引數。
(8 ) <sql_statement>
儲存過程中的過程體,要包含在儲存過程中的一個或多個Transact-SQL 語句。
例: 使用 create procedure 語句建立一個儲存過程,用來根據學生編號查詢學生資訊。
create procedure proc_student
@proc_sno int
As
Select * from student where sno=@proc_sno
最後:
關注回覆“軟體測試”即可獲取軟體測試全套影片教程
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69914734/viewspace-2656154/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 資料庫儲存過程資料庫儲存過程
- MySql資料庫——儲存過程MySql資料庫儲存過程
- 頭歌資料庫實驗六:儲存過程資料庫儲存過程
- sqlserver資料庫還原儲存過程指令碼SQLServer資料庫儲存過程指令碼
- 使用儲存過程(PL/SQL)向資料庫中儲存BLOB物件儲存過程SQL資料庫物件
- 金倉資料庫KingbaseES儲存過程 RETURN語句資料庫儲存過程
- 通過EFCore呼叫GBase8s資料庫儲存過程資料庫儲存過程
- SQL Server資料庫遠端更新目標表資料的儲存過程SQLServer資料庫儲存過程
- 【故障公告】1個儲存過程拖垮整個資料庫儲存過程資料庫
- 使用JavaScript和Python實現Oracle資料庫的儲存過程?JavaScriptPythonOracle資料庫儲存過程
- 恢復MySQL資料庫建立儲存過程是遇到錯誤MySql資料庫儲存過程
- 明解資料庫------資料庫儲存演變史資料庫
- gitlab資料庫儲存位置Gitlab資料庫
- 資料庫分庫,原來 SQL 和儲存過程寫的報表咋辦?資料庫SQL儲存過程
- 查詢當前資料庫存在某個字串的儲存過程資料庫字串儲存過程
- 淺談mysql資料庫技術,輕鬆玩轉儲存過程MySql資料庫儲存過程
- MySQL 更改資料庫資料儲存目錄MySql資料庫
- Flutter持久化儲存之資料庫儲存Flutter持久化資料庫
- Mysql資料庫建立儲存過程實現往資料表中新增欄位的方法MySql資料庫儲存過程
- 達夢資料庫基礎知識(一)資料庫物理儲存結構資料庫
- 報表資料分庫儲存
- MySQL資料庫操作、儲存引擎MySql資料庫儲存引擎
- 資料庫恢復過程資料庫
- 【資料庫資料恢復】透過資料頁恢復Sql Server資料庫資料的過程資料庫資料恢復SQLServer
- 【SqlServer】清除過期資料的儲存過程SQLServer儲存過程
- 資料庫的儲存引擎最佳化是一個揚長避短的過程資料庫儲存引擎
- 儲存過程_造使用者資料儲存過程
- MySQL的寫入資料儲存過程MySql儲存過程
- greenDAO資料庫之修改儲存地址資料庫
- MySQL資料庫儲存引擎簡介MySql資料庫儲存引擎
- 《資料儲存》之《分庫,分表》
- 萬里GreatDB資料庫的學習之路--GreatDB儲存過程管理介面(6)資料庫儲存過程
- mysql 匯入匯出資料庫以及函式、儲存過程的介紹MySql資料庫函式儲存過程
- Ubuntu 上更改 MySQL 資料庫資料儲存目錄UbuntuMySql資料庫
- #第9篇分享:python資料儲存-MySQL資料庫PythonMySql資料庫
- 誤刪除儲存SqlServer資料庫資料恢復SQLServer資料庫資料恢復
- 重新學習Mysql資料庫3:Mysql儲存引擎與資料儲存原理MySql資料庫儲存引擎
- 資料庫的連線過程資料庫