成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

實作CLR存儲過程十四步

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

存儲過程是SQLServer2005程序設計中最重要的一環,您會發現,應用系統中的許多作業都會交由存儲過程來完成。在以下的操作步驟中,我們帶大家利用VisualStudio2005整合式開發環境,實際建立一個CLR存儲過程(采用VisualC#),并示范如何使用它:

1.如圖表1所示,選取MicrosoftVisualStudio2005菜單指令來開啟VisualStudio2005的整合式開發環境。

VisualStudio2005的整合式開發環境 

2.從「項目」菜單中選取「新增/項目」指令。

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

類別庫

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

5.從「項目」菜單中選取「加入新項目」指令。

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

對話框頁面

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對象的Send方法將單一數據列結果集(也就是SqlDataRecord對象)  
  13. //直接傳送給客戶端。  
  14. SqlContext.Pipe.Send(greetingRecord);  
  15. //將文字符串指派給輸出參數。  
  16. greeting="現在時間是"+DateTime.Now.ToString()+"---章立民研究室向您問好!";  
  17. }  
  18. }  

上述程序代碼中的SayHello程序是一個公用靜態方法,而它也就是CLR存儲過程所實際呼叫的對象。

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

9.如圖表4所示,使用鼠標連按兩下「方案總管」中的Properties節點,一開始會顯示出「應用程序」索引卷標頁面,您可以去設定組件名稱與跟命名空間。不過以本實作演練而言,請采用默認值,不要更改。

索引卷標頁面

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

編譯

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

12.好的,我們現在已經完成組件的建置作業,現在必須回到SQLServerManagementStudio中,以便登錄組件并建立指向該組件的存儲過程。

13.請您于SQLServerManagementStudio中執行以下的程序代碼,以便使用CREATEASSEMBLY陳述式來登錄組件SayHello.dll,然后使用CREATEPROCEDURE陳述式建立一個會參考所登錄之組件SayHello.dll的存儲過程:

  1. USE北風貿易;  
  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(請務必確認組件所在路徑正確)  
  10. CREATEASSEMBLYSayHello  
  11. FROM'C:\SQL2005Demo\CH13\SayHello\SayHello\bin\SayHello.dll'  
  12. WITHpermission_set=Safe;|  
  13. GO﹂──>組件的位置路徑  
  14. --建立一個會參考所登錄之組件SayHello.dll的存儲過程  
  15. CREATEPROCEDUREdbo.SayHello  
  16. (  
  17. @Greetingnvarchar(80)OUTPUT  
  18. )  
  19. ASEXTERNALNAMESayHello.[SayHello.SayHelloClass].SayHello;  
  20. GO↓  
  21. [命名空間.類別名稱] 

14.請您繼續于SQLServerManagementStudio中執行以下的程序代碼,以便嘗試執行我們所建立的CLR存儲過程(執行結果如圖表6所示):

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


 
執行結果

【編輯推薦】

  1. 圖文講解.NET CLR是什么
  2. 使用CLR存儲過程來傳回訊息實戰案例
  3. 經典案例之創建CLR存儲過程
  4. 概括Visual Studio CLR調試器兩種方法
  5. Visual Studio中SQL SERVER CLR代碼調試工具使用講解
責任編輯:田樹 來源: 博客
相關推薦

2009-09-18 10:40:05

CLR存儲過程

2009-10-22 13:02:47

SQL CLR存儲過程

2009-09-18 14:09:57

SQL CLR存儲過程

2009-10-22 14:05:55

CLR存儲過程

2009-09-18 10:55:17

CLR存儲過程

2009-10-22 15:09:40

CLR存儲過程

2009-09-17 19:19:17

CLR存儲過程

2010-04-16 11:11:46

Oracle存儲過程

2010-04-15 17:45:26

Oracle存儲過程

2010-04-16 12:58:48

Oracle sql

2010-04-16 11:22:08

Oracle存儲過程

2010-06-30 11:21:42

UML業務建模

2010-04-30 09:34:24

Oracle多條件查詢

2010-05-05 14:55:15

Oracle存儲過程

2009-09-03 14:26:17

Jit編譯

2011-12-28 15:41:49

WCF

2017-03-14 14:04:24

Python機器學習

2009-08-24 11:36:27

CLR加載過程

2009-10-22 12:25:21

SQL SERVER調

2010-09-07 13:18:49

ROS構建PPPOE服
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美亚洲高清 | 综合国产| 91精品国产91久久久久久三级 | 99国产精品99久久久久久 | 国产日韩精品久久 | www.色婷婷 | 久久国产精品免费一区二区三区 | 亚洲精品一区二区三区 | 国产在线激情视频 | 波波电影院一区二区三区 | 天堂网avav| 黄色片大全在线观看 | 亚洲精品国产第一综合99久久 | 一区二区三区成人 | 亚洲欧美中文日韩在线v日本 | 最新日韩av | 中文字幕在线观看日韩 | 成人在线中文字幕 | 国产欧美日韩视频 | 国产精品污www一区二区三区 | 国产精品久久国产精品99 | 欧美视频免费在线 | 欧美精品福利视频 | 99精品在线 | 亚州一区二区三区 | 国产精品伦理一区 | 国产精品欧美日韩 | 色一情一乱一伦一区二区三区 | 亚洲精品一区在线观看 | 国产特级毛片aaaaaa喷潮 | 国产精品国产精品国产专区不蜜 | www.精品国产 | av无遮挡| 亚洲成人免费电影 | 国产精品美女www爽爽爽视频 | 欧美一区二区三区在线 | 性色在线 | 久久综合99 | 国产一区二区三区视频 | 99热这里都是精品 | 国产精品18毛片一区二区 |