亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來(lái)到思海網(wǎng)絡(luò),我們將竭誠(chéng)為您提供優(yōu)質(zhì)的服務(wù)! 誠(chéng)征網(wǎng)絡(luò)推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購(gòu)買(mǎi)流程 | 付款方式 | 聯(lián)系我們 [ 會(huì)員登錄/注冊(cè) ]
促銷(xiāo)推廣
客服中心
業(yè)務(wù)咨詢(xún)
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352289
點(diǎn)擊這里給我發(fā)消息  81721488
有事點(diǎn)擊這里…  376585780
有事點(diǎn)擊這里…  872642803
有事點(diǎn)擊這里…  459248018
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  380791050
技術(shù)支持
有事點(diǎn)擊這里…  714236853
有事點(diǎn)擊這里…  719304487
有事點(diǎn)擊這里…  1208894568
有事點(diǎn)擊這里…  61352289
在線客服
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  983054746
有事點(diǎn)擊這里…  893984210
當(dāng)前位置:首頁(yè) >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

有關(guān)SQL Server 2005 CLR

添加時(shí)間:2012-12-5 17:22:16  添加: 思海網(wǎng)絡(luò) 

  在SQL Server 2005的許多被大力推薦的特性里面,有一項(xiàng)可能對(duì)那些使用SQLServer 工作的編程人員最實(shí)用的是Common Language Runtime,或者簡(jiǎn)寫(xiě)為CLR。CLR可以讓編程人員直接在SQL Server中創(chuàng)建存儲(chǔ)過(guò)程、觸發(fā)器,用戶(hù)自定義函數(shù),集合體和類(lèi)型。CLR有很多的承諾,但是也有一些缺陷。

  關(guān)于CLR的重要性有一些主要的原因。首先,隨著SQL Server 編程技術(shù)的成熟,代碼編寫(xiě)人員陷入了SQL Server自身的一些限制之中,并且在很大程度上依賴(lài)外部的代碼來(lái)執(zhí)行一些繁重的移植。T-SQL (事務(wù)處理SQL)在返回?cái)?shù)據(jù)集方面很好,但是除了這個(gè)之外則表現(xiàn)不佳。CLR使得問(wèn)題的解決有了可能,并且在SQL Server內(nèi)部進(jìn)行數(shù)據(jù)操作,而這些原本需要一個(gè)完全獨(dú)立的程序來(lái)實(shí)現(xiàn)的。.NET的操作代碼和執(zhí)行速度比SQL Server/T-SQL好得多;.NET中的同一位的代碼可以運(yùn)行更快地運(yùn)行許多次,當(dāng)它是二進(jìn)制的,而不是作為存儲(chǔ)過(guò)程來(lái)構(gòu)建時(shí)。

  使用CLR的另一個(gè)巨大的好處就是安全。所有的代碼都在運(yùn)行前檢測(cè)類(lèi)型和安全權(quán)限。例如,先前沒(méi)有被寫(xiě)入的內(nèi)存是不允許被問(wèn)題中的代碼讀取的。CLR也很完善;.NET框架中的每樣?xùn)|西都可以從存儲(chǔ)過(guò)程、觸發(fā)器或者用戶(hù)函數(shù)進(jìn)行訪問(wèn)——除了處理類(lèi)似用戶(hù)接口的類(lèi),它在SQL Server是無(wú)論如何不會(huì)有用的。

  要防止CLR代碼胡亂運(yùn)行,微軟為CLR代碼的調(diào)用創(chuàng)建了一個(gè)三層的安全模型:SAFE, EXTERNAL_ACCESS 和 UNSAFE。SAFE權(quán)限集合在本質(zhì)上與傳統(tǒng)的存儲(chǔ)過(guò)程能夠做的事情一樣。在SQL Server之外不能對(duì)其進(jìn)行任何修改。EXTERNAL_ACCESS允許通過(guò).NET對(duì)注冊(cè)表和文件系統(tǒng)進(jìn)行訪問(wèn)。UNSAFE正如其名。標(biāo)記為UNSAFE的代碼不能做任何事情,并且它實(shí)際上是不應(yīng)該在調(diào)試或者實(shí)驗(yàn)環(huán)境之外使用的。大多數(shù)的編程人員應(yīng)該永遠(yuǎn)都不需要用到高于EXTERNAL_ACCESS級(jí)別的任何東西。(如果你需要在存儲(chǔ)過(guò)程或者函數(shù)的環(huán)境中與文件系統(tǒng)或者注冊(cè)表對(duì)話(huà),這有可能意味著你需要重新考慮你嘗試的邏輯了。)

  然而,CLR并不是適合一切。一方面,它可能適合那些不容易、需要進(jìn)行編程,在T-SQL中實(shí)現(xiàn)的環(huán)境。許多簡(jiǎn)單的操作可以在T-SQL以存儲(chǔ)過(guò)程的方式完成,并且不需要擴(kuò)展到外部進(jìn)程。這意味著上下文交換和額外的事務(wù)開(kāi)銷(xiāo),這兩項(xiàng)中的任何一項(xiàng)開(kāi)銷(xiāo)都能首先抹消你使用CLR獲得的速度提升。CLR最好用于替代擴(kuò)展存儲(chǔ)過(guò)程——例如,那些必須封閉在數(shù)據(jù)庫(kù)中,但是卻非常麻煩,無(wú)法用T-SQL從容完成,同時(shí)又不能輕松移動(dòng)到業(yè)務(wù)邏輯末尾的事情。

  另一個(gè)可能的缺點(diǎn)就是:正如SQL的領(lǐng)袖Rod Paddock在他的blog中指出的,如果你講業(yè)務(wù)邏輯中的某個(gè)元素移動(dòng)到數(shù)據(jù)庫(kù),那就可能會(huì)引起可測(cè)量性的問(wèn)題。畢竟,SQL Server 更適合于按比例提高的單個(gè)大型機(jī)器,而不是橫跨在幾個(gè)比較小的機(jī)器(通常是按照業(yè)務(wù)比例來(lái)的)上。這一點(diǎn)指出了有選擇的使用CLR有多重要。T-SQL簡(jiǎn)潔、有效;CLR/.NET昂貴并且范圍廣泛。正確的工作選擇正確的工具,盡管擁有眾多選擇也不錯(cuò)。

關(guān)鍵字:SQL Server 2005 CLR、機(jī)器

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡(luò)有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話(huà):(0757)22630313、22633833
中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證: 粵B1.B2-20030321 備案號(hào):粵B2-20030321-1
網(wǎng)站公安備案編號(hào):44060602000007 交互式欄目專(zhuān)項(xiàng)備案編號(hào):200303DD003  
察察 工商 網(wǎng)安 舉報(bào)有獎(jiǎng)  警警  手機(jī)打開(kāi)網(wǎng)站