預存程序(摘自BOL):

來源:互聯網
上載者:User
預存程序 在使用 Microsoft® SQL Server™ 2000 建立應用程式時,Transact-SQL 程式設計語言是應用程式和 SQL Server 資料庫之間的主要編程介面。使用 Transact-SQL 程式時,可用兩種方法儲存和執行程式。可以在本機存放區程式,並建立向 SQL Server 發送命令並處理結果的應用程式;也可以將程式在 SQL Server 中儲存為預存程序,並建立執行預存程序並處理結果的應用程式。

SQL Server 中的預存程序與其它程式設計語言中的過程類似,原因是預存程序可以:

接受輸入參數並以輸出參數的形式將多個值返回至調用過程或批處理。


包含執行資料庫操作(包括調用其它過程)的編程語句。


向調用過程或批處理返回狀態值,以表明成功或失敗(以及失敗原因)。
可使用 Transact-SQL EXECUTE 語句運行預存程序。預存程序與函數不同,因為預存程序不返回取代其名稱的值,也不能直接用在運算式中。

使用 SQL Server 中的預存程序而不使用儲存在客戶電腦本地的 Transact-SQL 程式的優勢有:

允許模組化程式設計。
只需建立過程一次並將其儲存在資料庫中,以後即可在程式中調用該過程任意次。預存程序可由在資料庫編程方面有專長的人員建立,並可獨立於程式原始碼而單獨修改。

允許更快執行。
如果某操作需要大量 Transact-SQL 代碼或需重複執行,預存程序將比 Transact-SQL 批代碼的執行要快。將在建立預存程序時對其進行分析和最佳化,並可在首次執行該過程後使用該過程的記憶體中版本。每次運行 Transact-SQL 陳述式時,都要從用戶端重複發送,並且在 SQL Server 每次執行這些語句時,都要對其進行編譯和最佳化。

減少網路流量。
一個需要數百行 Transact-SQL 代碼的操作由一條執行過程代碼的單獨語句就可實現,而不需要在網路中發送數百行代碼。

可作為安全機制使用。
即使對於沒有直接執行預存程序中語句的許可權的使用者,也可授予他們執行該預存程序的許可權。

SQL Server 預存程序是用 Transact-SQL 陳述式 CREATE PROCEDURE 建立的,並可用 ALTER PROCEDURE 語句進行修改。預存程序定義包含兩個主要組成部分:過程名稱及其參數的說明,以及過程的主體(其中包含執行過程操作的 Transact-SQL 陳述式)。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。