91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SQL SERVER調用CLR類庫的實現步驟是怎樣的

發布時間:2021-11-24 09:40:02 來源:億速云 閱讀:214 作者:柒染 欄目:編程語言

SQL SERVER調用CLR類庫的實現步驟是怎樣的,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

SQL Server調用CLR類庫實現分為一下幾個步驟:
1、在.NET中新建一個CLR類庫項目,并在這個項目中添加一個類文件,并把要被SQL Server調用的方法定義為公有的,靜態的方法。
2、把這個項目編譯為一個DLL。
3、在SQL Server中注冊這個DLL。
4、通過使用SQL Server的函數來訪問指定的.NET方法。

一: 在CLR類庫中編寫方法,必須是靜態公有的

public   class  CLRFunctions      {          public   static   string  HelloWorld( string  Name)         {   網管網bitsCN.com   return  ( " Hello "   +  Name);       }    }

二: 啟用CLR類庫功能

默認情況下,SQL Server中的CLR是關閉的,所以我們需要執行如下命令打開CLR

exec  sp_configure  ' clr enabled ' , 1     reconfigure [with override]     go

如果上面的命令在執行過程中出現“不支持對系統目錄進行即席更新 ”的錯誤時,可以把上面方括號里面的內容加上。

三:SQL SERVER調用CLR類庫之注冊DLL

為了調用我們寫的那個方法,需要在SQL Server中注冊我們剛剛編譯好的那個DLL。 我們可以在數據庫中使用如下命令來注冊DLL(路徑為你的DLL文件的路徑)

CREATE  ASSEMBLY asmHelloWorld  FROM   ' C:SQLDLL.dll '     如果要刪除注冊的DLL,可以使用下面的方法:  DROP ASSEMBLY asmHelloWorld

四:CLR類庫之在SQL Server中調用我們的.NET方法

為了調用.NET方法,我們可以寫一個SQL Server自定義函數,并在其內使用“EXTERNAL NAME”來通知SQL Server使用CLR功能。 代碼如下:

CREATE   FUNCTION  dbo.clrHelloWorld        (            @name   as   nvarchar ( 200 )    中國網管論壇bbs.bitsCN.com      )         RETURNS   nvarchar ( 200 )        AS    EXTERNAL NAME asmHelloWorld. [ SQLDLL .CLRFunctions ] .HelloWorld

上面的自定義函數做了兩項工作。首先是聲明了一個nvarchar參數,它等同于.NET里的string類型(如果將其設置為varchar并且后面使用了“EXTERNAL NAME”的話就會報錯)。然后使用“EXTERNAL NAME”來調用.NET方法。 語法如下:

程序集名.類名.方法名

但是,當我使用這個語法調用.NET方法的時候,SQL Server就會報錯,所以為了讓它正常工作,我使用了如下語法:

程序集注冊名.[程序集名.類名].方法名

現在我們就可以通過如下語句使用CLR類庫實現的方法了:

SELECT  dbo.clrHelloWorld( ' Mark ' )

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

古交市| 涿州市| 娱乐| 大邑县| 新津县| 砀山县| 铁岭市| 呼伦贝尔市| 四子王旗| 屏东市| 五华县| 松原市| 濮阳市| 景德镇市| 镇安县| 芮城县| 自贡市| 富民县| 天津市| 桐乡市| 潢川县| 陆良县| 浦北县| 普安县| 凌源市| 鄂伦春自治旗| 红河县| 博白县| 逊克县| 朝阳区| 呈贡县| 崇仁县| 镇江市| 深水埗区| 开远市| 讷河市| 宜兰市| 星子县| 皮山县| 莱阳市| 芷江|