學(xué)習(xí)SQL數(shù)據(jù)庫有哪些方法?
導(dǎo)讀:相對(duì)于其他的數(shù)據(jù)庫訪問方法,SQL存儲(chǔ)過程有許多的優(yōu)點(diǎn),下面就由北大青鳥翔天信鴿的專業(yè)老師為大家全面分析SQL存儲(chǔ)過程的優(yōu)勢(shì)及使用,以供SQL數(shù)據(jù)庫學(xué)習(xí)者參考學(xué)習(xí)。
學(xué)習(xí)SQL數(shù)據(jù)庫,SQL存儲(chǔ)過程是大家都會(huì)面臨的方面,SQL Server的存儲(chǔ)過程是一個(gè)被命名的存儲(chǔ)在服務(wù)器上的Transacation-SQL語句集合,是封裝重復(fù)性工作的一種方法,它支持用戶聲明的變量、條件執(zhí)行和其他強(qiáng)大的編程功能。
一、SQL存儲(chǔ)過程的優(yōu)點(diǎn)
SQL存儲(chǔ)過程相對(duì)于其他的數(shù)據(jù)庫訪問方法有以下的優(yōu)點(diǎn):
1.SQL存儲(chǔ)過程能夠重復(fù)使用。
SQL存儲(chǔ)過程可以重復(fù)使用,從而可以減少數(shù)據(jù)庫開發(fā)人員的工作量。
2.SQL存儲(chǔ)過程的性能更好。
SQL存儲(chǔ)過程在創(chuàng)建的時(shí)候就進(jìn)行了編譯,將來使用的時(shí)候不用再重新編譯。一般的SQL語句每執(zhí)行一次就需要編譯一次,所以使用SQL存儲(chǔ)過程提高了效率。
3.SQL存儲(chǔ)過程減少網(wǎng)絡(luò)流量。
SQL存儲(chǔ)過程位于服務(wù)器上,調(diào)用的時(shí)候只需要傳遞SQL存儲(chǔ)過程的名稱以及參數(shù)就可以了,因此降低了網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量。
4.SQL存儲(chǔ)過程的安全性更高。
參數(shù)化的SQL存儲(chǔ)過程可以防止SQL注入式的攻擊,而且可以將Grant、Deny以及Revoke權(quán)限應(yīng)用于存儲(chǔ)過程。
二、SQL存儲(chǔ)過程的分類
SQL存儲(chǔ)過程一共分為了三類:用戶定義的存儲(chǔ)過程、擴(kuò)展存儲(chǔ)過程以及系統(tǒng)存儲(chǔ)過程。
1.用戶定義的SQL存儲(chǔ)過程
用戶定義的SQL存儲(chǔ)過程又分為Transaction-SQL和CLR兩種類型。
Transaction-SQL 存儲(chǔ)過程是指保存的Transaction-SQL語句集合,可以接受和返回用戶提供的參數(shù)。
CLR存儲(chǔ)過程是指對(duì).Net Framework公共語言運(yùn)行時(shí)(CLR)方法的引用,可以接受和返回用戶提供的參數(shù)。他們?cè)?net Framework程序集中是作為類的公共靜態(tài)方法實(shí)現(xiàn)的。
2.擴(kuò)展存儲(chǔ)過程
擴(kuò)展存儲(chǔ)過程是以C語言等編寫的外部程序,以動(dòng)態(tài)鏈接庫(Dll)形式存儲(chǔ)在服務(wù)器上,SQL Server可以動(dòng)態(tài)裝載并執(zhí)行它們。編寫好擴(kuò)展存儲(chǔ)過程后,固定服務(wù)器角色(sysadamin)成員即可在SQL Server服務(wù)器上注冊(cè)該擴(kuò)展存儲(chǔ)過程,并將它們的執(zhí)行權(quán)限授權(quán)其他用戶。擴(kuò)展存儲(chǔ)過程只能添加到Master數(shù)據(jù)庫。
3.系統(tǒng)存儲(chǔ)過程
系統(tǒng)存儲(chǔ)過程就是系統(tǒng)創(chuàng)建的存儲(chǔ)過程,目的在于能夠方便地從系統(tǒng)表中查詢信息或完成與更新數(shù)據(jù)庫表相關(guān)的管理任務(wù)或其它的系統(tǒng)管理任務(wù)。
系統(tǒng)過程以“sp”為開頭,在Master數(shù)據(jù)庫中創(chuàng)建并保存在該數(shù)據(jù)庫中,為數(shù)據(jù)庫管理者所有。一些系統(tǒng)過程只能由系統(tǒng)管理員使用,而有些系統(tǒng)過程通過授權(quán)可以被其它用戶所使用。
文章由鄭州北大青鳥整理,轉(zhuǎn)載請(qǐng)注明:http:// 【咨詢請(qǐng)點(diǎn)擊】
本文由站河南北大青鳥校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問題,可以對(duì)在線咨詢老師進(jìn)行一對(duì)一問答!
推薦資訊
- 男生上技校學(xué)什么好?... 2019-12-03
- 北大青鳥高中生特招班,最后幾個(gè)... 2012-10-13
- 鄭州IT培訓(xùn):如何提高移動(dòng)設(shè)備數(shù)據(jù)... 2012-10-13
- 北大青鳥APTECH詩朗誦《在這里》... 2014-12-20
- 孩子高考落榜該上什么樣的學(xué)校呢... 2019-07-26
熱點(diǎn)資訊
- 學(xué)習(xí)SQL數(shù)據(jù)庫有哪些方法?... 2018-09-07
- 河南IT培訓(xùn):SQLSERVER2000T-SQL的... 2018-09-07
- 使用access數(shù)據(jù)庫有哪些好處呢?... 2018-09-07
- 網(wǎng)站數(shù)據(jù)庫老是被入侵該怎么辦?... 2018-09-07
- 半小時(shí)讓你快速M(fèi)ySQL 入門... 2018-09-07