999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

SQL Server中存儲過程技術的研究

2014-10-21 20:09:34楊銘
科技視界 2014年34期
關鍵詞:數據庫用戶系統

楊銘

1 存儲過程的概念

當開發一個應用程序時,為了易于修改和擴充,經常會將負責不同功能的語句集中起來而且按照用途分別獨立放置,以便能夠反復調用,而這些獨立放置且擁有不同功能的語句,即是“過程”(Procedure)。存儲過程包含一些Transact-SQL語句并以特定的名稱存儲在數據庫中(存儲過程也是一種數據庫對象)。存儲過程中可以聲明變量、有條件地執行以及其他各項強大的程序設計功能。

2 存儲過程的分類

2.1 系統存儲過程

系統存儲過程(System Stored Procedures)主要存儲在master數據庫中,并以sp_為前綴,并且系統存儲過程主要是從系統表中獲取信息。通過系統存儲過程,許多管理性或信息性的活動(如了解數庫對象、數據庫信息)都可以被有效地完成。盡管這些系統存儲過程被存儲在master數據庫中,但是仍可以在其他數據庫中對其進行調用。當創建一個數據庫時,一些系統存儲過程會在新的數據庫中被自動創建。

系統存儲過程所能完成的操作多達千百項。例如,提供幫助的系統存儲過程有sp_helpsql顯示關于SQL語句、存儲過程和其他主題的信息;sp_help提供關于存儲過程或其他數據庫對象的報告;sp_helptext顯示存儲過程和其他對象的文本;sp_depends列舉引用或依賴指定對象的所有存儲過程。事實上,在前面的學習中就已使用道不少的系統存儲過程,例如,sp_tables取得數據庫中關于表和視圖的相關信息;sp_renamedb更改數據庫的名稱等。

當系統存儲過程的參數是保留字或對象名,且對象名由數據庫或擁有者名字限定時,整個名字必須包含在單引號中。一個用戶可以在所有數據庫中執行一個系統存儲過程的許可權,否則在任何數據庫中都不能執行系統存儲過程。

2.2 本地存儲過程

本地存儲過程(Local Stored Procedures)也就是用戶自行創建并存儲在用戶數據庫中的存儲過程。事實上一般所說的存儲過程指的就是本地存儲過程。

用戶創建的存儲過程是由用戶創建并能完成某一特定功能(如查詢用戶所需的數據信息)的存儲過程。

2.3 臨時存儲過程

臨時存儲過程(Temporary Stored Procedures)可分為以下兩種:

2.3.1 本地臨時存儲過程

不論哪一個數據庫是當前數據庫,如果在創建存儲過程時,以井字號(#)作為其名稱的第一個字符,則該存儲過程將成為一個存放在tempdb數據庫中的本地臨時存儲過程(例如,CREATE ?PROCEDURE #book_proc …)。本地臨時存儲過程只有創建它的連接的用戶才能夠執行它,而且一旦這位用戶斷開與SQL Server的連接(也就是注銷SQL Server 2005),本地臨時存儲過程就會自動刪除,當然,這位用戶也可以在連接期間用DROP PROCEDURE命令刪除他所創建的本地臨時存儲過程。

2.3.2 全局臨時存儲過程

不論哪一個數據庫是當前數據庫,只要所創建的存儲過程名稱是以兩個井字號(##)開始,則該存儲過程將成為一個存儲在tempdb數據庫中的全局臨時存儲過程。全局臨時存儲過程一旦創建,以后連接到數據庫的任意用戶都能執行它,而且不需要特定的權限。因此,必須注意其名稱不能和其他連接所采用的名稱相同。

不論創建的是本地臨時存儲過程還是全局臨時存儲過程,只要服務器管理平臺停止運行,它們將不復存在。

2.4 遠程存儲過程

遠程存儲過程(Remote Stored Procedures)是位于遠程服務器上的存儲過程,通??梢允褂梅植际讲樵兒虴XECUTE命令執行一個遠程存儲過程。

2.5 擴展存儲過程

擴展存儲過程(Extended Stored Procedures)是用戶可以使用外部程序語言編寫的存儲過程。為了區別,擴展存儲過程的名稱通常以xp_開頭。擴展存儲過程是以動態鏈接庫(DLLS)的形式存在,它要存儲在系統數據庫master中。

3 存儲過程的運行方式

(1)能夠包含執行各種數據庫操作的語句,并且可以調用其他的存儲過程。

(2)能夠接受輸入參數,并以輸出參數的形式將多個數據值返回給調用程序(Calling Procedure)或批處理(Batch)。

(3)向調用程序或批處理返回一個狀態值,以表明成功或失?。ㄒ约笆〉脑颍?。

(4)存儲過程(Stored Procedures)是一組為完成特定功能的SQL語句集,經編譯后存儲在數據庫中。用戶通過指定存儲過程的名字給出參數(如果該存儲過程帶有參數)來執行它。

4 存儲過程的優點

(1)通過本地存儲、代碼預編譯和緩存技術實現高性能的數據操作。

(2)通過通用編程結構和過程實現編程框架。如果業務規則發生變化,可以通過修改存儲過程來適應新的業務規則,而不必修改客戶端的應用程序。這樣所有調用該存儲過程的應用程序就會遵循新的業務規則。

(3)通過隔離和加密的方法提高數據庫的安全性。數據庠用戶可以通過得到權限來執行存儲過程,而不必給予用戶直接訪問數據庫對象的權限。這些對象將由存儲過程來執行操作,另外,存儲過程可以加密,這樣用戶就無法閱讀存儲過程中的Transact-SQL語句。

【參考文獻】

[1]夏慧,李響,齊泉.存儲過程在復雜的數據統計查詢中的應用[J].醫學信息, 2009(08).

[2]曾毅,王玉萍.SQL Server數據庫中存儲過程的實現[J].科技信息·科學教研, 2008(25).

[3]鄢愛蘭,鹿江春.數據庫存儲過程應用研究[J].南華大學學報:自然科學版, 2006(02).

[責任編輯:楊玉潔]

猜你喜歡
數據庫用戶系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 四虎亚洲国产成人久久精品| 97在线免费| 国模沟沟一区二区三区| 久久国产亚洲欧美日韩精品| 9999在线视频| 香蕉eeww99国产在线观看| 一级毛片免费观看不卡视频| 欧美不卡在线视频| 日本高清成本人视频一区| 亚洲黄色成人| 激情视频综合网| 一区二区三区成人| 欧美国产日韩在线播放| 亚洲美女高潮久久久久久久| 色综合综合网| 成人av手机在线观看| 欧美精品啪啪| 久久国产av麻豆| 欧美人在线一区二区三区| 亚洲制服中文字幕一区二区| 久久精品国产精品一区二区| 成人a免费α片在线视频网站| 亚洲欧美另类日本| 亚洲天堂色色人体| 欧美日韩一区二区在线播放 | 91精品国产无线乱码在线| 国产成人精品在线| аⅴ资源中文在线天堂| 亚欧美国产综合| 久久大香伊蕉在人线观看热2| 91精品网站| 欧美日韩中文国产| 免费又爽又刺激高潮网址| 亚洲一区二区成人| 欧美日韩午夜| 九色在线观看视频| 99中文字幕亚洲一区二区| 亚洲另类色| 日韩人妻精品一区| 香蕉久人久人青草青草| 久青草免费视频| 波多野结衣无码中文字幕在线观看一区二区 | 污视频日本| 精品第一国产综合精品Aⅴ| 久久国产拍爱| 国产精品一老牛影视频| 久久国产拍爱| 97超碰精品成人国产| 亚洲国产综合第一精品小说| 中文字幕啪啪| 国模视频一区二区| 亚洲成人高清无码| 亚洲九九视频| 999精品视频在线| 国产91小视频| 亚洲一区二区三区国产精品 | 伦精品一区二区三区视频| 久久亚洲天堂| 高清无码一本到东京热| 在线视频97| 国产91久久久久久| 国产精品99久久久| 狠狠做深爱婷婷久久一区| 在线观看亚洲成人| 亚洲第一成年人网站| 香蕉精品在线| 尤物视频一区| 欧美色亚洲| 欧美视频在线观看第一页| 极品国产在线| 国产av剧情无码精品色午夜| 精品无码国产一区二区三区AV| 日韩精品专区免费无码aⅴ| 97国产精品视频自在拍| 四虎成人在线视频| 亚洲制服丝袜第一页| 精品91自产拍在线| 国产成人一区免费观看| 大学生久久香蕉国产线观看| 97在线国产视频| 国产精品福利社| 亚洲欧美日本国产综合在线|