自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

實(shí)作CLR存儲(chǔ)過程十四步

開發(fā) 后端
文章主要介紹了CLR存儲(chǔ)過程,下面是一個(gè)實(shí)際建立一個(gè)CLR存儲(chǔ)過程(采用VisualC#),并示范如何使用它,希望給你帶來幫助。

存儲(chǔ)過程是SQLServer2005程序設(shè)計(jì)中最重要的一環(huán),您會(huì)發(fā)現(xiàn),應(yīng)用系統(tǒng)中的許多作業(yè)都會(huì)交由存儲(chǔ)過程來完成。在以下的操作步驟中,我們帶大家利用VisualStudio2005整合式開發(fā)環(huán)境,實(shí)際建立一個(gè)CLR存儲(chǔ)過程(采用VisualC#),并示范如何使用它:

1.如圖表1所示,選取MicrosoftVisualStudio2005菜單指令來開啟VisualStudio2005的整合式開發(fā)環(huán)境。

VisualStudio2005的整合式開發(fā)環(huán)境 

2.從「項(xiàng)目」菜單中選取「新增/項(xiàng)目」指令。

3.如圖表2所示,選取「類別庫」模板,然后依序指定項(xiàng)目名稱(SayHello)、存放位置、以及方案名稱(SayHello)之后,按一下「確定」按鈕。

類別庫

4.于VisualStudio2005整合式開發(fā)環(huán)境的「方案總管」中,使用鼠標(biāo)右鍵按一下預(yù)設(shè)建立的Class1.cs并從快捷菜單中選取「刪除」指令以便將它刪除。

5.從「項(xiàng)目」菜單中選取「加入新項(xiàng)目」指令。

6.如圖表3所示,于「加入新項(xiàng)目」對(duì)話框中,選取「類別」模板,然后以SayHelloClass.cs作為類別檔的文件名稱,然后按一下「加入」按鈕。

對(duì)話框頁面

7.于程序代碼編輯器中,將SayHelloClass類別的程序代碼改寫如下:

  1. usingMicrosoft.SqlServer.Server;  
  2. namespaceSayHello  
  3. {  
  4. publicclassSayHelloClass  
  5. {  
  6. [Microsoft.SqlServer.Server.SqlProcedure()]  
  7. publicstaticvoidSayHello(refstringgreeting)  
  8. {  
  9. SqlMetaDatacolumnInfo=newSqlMetaData("問候",SqlDbType.NVarChar,12);  
  10. SqlDataRecordgreetingRecord=newSqlDataRecord(newSqlMetaData[]{columnInfo});  
  11. greetingRecord.SetString(0,"大家好,我是章立民!");  
  12. //呼叫Pipe對(duì)象的Send方法將單一數(shù)據(jù)列結(jié)果集(也就是SqlDataRecord對(duì)象)  
  13. //直接傳送給客戶端。  
  14. SqlContext.Pipe.Send(greetingRecord);  
  15. //將文字符串指派給輸出參數(shù)。  
  16. greeting="現(xiàn)在時(shí)間是"+DateTime.Now.ToString()+"---章立民研究室向您問好!";  
  17. }  
  18. }  

上述程序代碼中的SayHello程序是一個(gè)公用靜態(tài)方法,而它也就是CLR存儲(chǔ)過程所實(shí)際呼叫的對(duì)象。

8.按一下工具列中的「儲(chǔ)存」按鈕。

9.如圖表4所示,使用鼠標(biāo)連按兩下「方案總管」中的Properties節(jié)點(diǎn),一開始會(huì)顯示出「應(yīng)用程序」索引卷標(biāo)頁面,您可以去設(shè)定組件名稱與跟命名空間。不過以本實(shí)作演練而言,請(qǐng)采用默認(rèn)值,不要更改。

索引卷標(biāo)頁面

10.按一下左側(cè)的「編譯」索引卷標(biāo)來切換至其頁面,并且將「建置輸出路徑」設(shè)定成bin然后按一下工具列中的「儲(chǔ)存」按鈕。

編譯

11.從「建置」菜單中選取「建置SayHello」指令。

12.好的,我們現(xiàn)在已經(jīng)完成組件的建置作業(yè),現(xiàn)在必須回到SQLServerManagementStudio中,以便登錄組件并建立指向該組件的存儲(chǔ)過程。

13.請(qǐng)您于SQLServerManagementStudio中執(zhí)行以下的程序代碼,以便使用CREATEASSEMBLY陳述式來登錄組件SayHello.dll,然后使用CREATEPROCEDURE陳述式建立一個(gè)會(huì)參考所登錄之組件SayHello.dll的存儲(chǔ)過程:

  1. USE北風(fēng)貿(mào)易;  
  2. GO  
  3. IFEXISTS(SELECT*FROMsys.proceduresWHERE[name]='SayHello')  
  4. DROPPROCEDURESayHello;  
  5. GO  
  6. IFEXISTS(SELECT*FROMsys.assembliesWHERE[name]='SayHello')  
  7. DROPASSEMBLYSayHello;  
  8. GO  
  9. --登錄組件SayHello.dll(請(qǐng)務(wù)必確認(rèn)組件所在路徑正確)  
  10. CREATEASSEMBLYSayHello  
  11. FROM'C:\SQL2005Demo\CH13\SayHello\SayHello\bin\SayHello.dll'  
  12. WITHpermission_set=Safe;|  
  13. GO﹂──>組件的位置路徑  
  14. --建立一個(gè)會(huì)參考所登錄之組件SayHello.dll的存儲(chǔ)過程  
  15. CREATEPROCEDUREdbo.SayHello  
  16. (  
  17. @Greetingnvarchar(80)OUTPUT  
  18. )  
  19. ASEXTERNALNAMESayHello.[SayHello.SayHelloClass].SayHello;  
  20. GO↓  
  21. [命名空間.類別名稱] 

14.請(qǐng)您繼續(xù)于SQLServerManagementStudio中執(zhí)行以下的程序代碼,以便嘗試執(zhí)行我們所建立的CLR存儲(chǔ)過程(執(zhí)行結(jié)果如圖表6所示):

  1. USE北風(fēng)貿(mào)易;  
  2. GO  
  3. EXECsp_configure'clrenabled','1';  
  4. GO  
  5. RECONFIGURE;  
  6. GO  
  7. DECLARE@return_valueint,@Greetingnvarchar(80);  
  8. --執(zhí)行CLR存儲(chǔ)過程并取得傳回值與輸出變量的值  
  9. EXECUTE@return_value=dbo.SayHello  
  10. @Greeting=@GreetingOUTPUT;  
  11. --檢視傳回值與輸出變數(shù)的值  
  12. SELECT@return_valueAS傳回值,  
  13. @GreetingAS"輸出參數(shù)@Greeting之值";  


 
執(zhí)行結(jié)果

【編輯推薦】

  1. 圖文講解.NET CLR是什么
  2. 使用CLR存儲(chǔ)過程來傳回訊息實(shí)戰(zhàn)案例
  3. 經(jīng)典案例之創(chuàng)建CLR存儲(chǔ)過程
  4. 概括Visual Studio CLR調(diào)試器兩種方法
  5. Visual Studio中SQL SERVER CLR代碼調(diào)試工具使用講解
責(zé)任編輯:田樹 來源: 博客
相關(guān)推薦

2009-09-18 10:40:05

CLR存儲(chǔ)過程

2009-09-18 14:09:57

SQL CLR存儲(chǔ)過程

2009-10-22 14:05:55

CLR存儲(chǔ)過程

2009-10-22 13:02:47

SQL CLR存儲(chǔ)過程

2009-09-18 10:55:17

CLR存儲(chǔ)過程

2009-10-22 15:09:40

CLR存儲(chǔ)過程

2009-09-17 19:19:17

CLR存儲(chǔ)過程

2010-04-16 11:11:46

Oracle存儲(chǔ)過程

2010-04-15 17:45:26

Oracle存儲(chǔ)過程

2010-04-16 11:22:08

Oracle存儲(chǔ)過程

2010-04-16 12:58:48

Oracle sql

2010-06-30 11:21:42

UML業(yè)務(wù)建模

2010-04-30 09:34:24

Oracle多條件查詢

2010-05-05 14:55:15

Oracle存儲(chǔ)過程

2009-09-03 14:26:17

Jit編譯

2011-12-28 15:41:49

WCF

2017-03-14 14:04:24

Python機(jī)器學(xué)習(xí)

2009-08-24 11:36:27

CLR加載過程

2009-10-22 12:25:21

SQL SERVER調(diào)

2010-09-07 13:18:49

ROS構(gòu)建PPPOE服
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)