1、編寫C#函數文件sql
一、新建一個類庫文件數據庫
備註:sqlserver 2008只能用.net3.5版本。api
二、若有想加入強命名的話可以下步驟:函數
參考博文:https://blog.csdn.net/donnie88888888/article/details/52743064工具
一、運行在「開始菜單」-「程序」-「Microsoft Visual Studio 2008」-「Visual Studio Tools」-「Visual Studio 2008命令提示」(使用這一命令行工做才能能任意路徑下執行VS命令行工具);sqlserver
二、建立一個強名稱程序集密鑰文件文件spa
執行命令C:\sn -k keypair.snk.net
三、爲類庫綁定密鑰文件命令行
(1)a. 若是你有要引用的類庫的源代碼,能夠在類庫項目中的AssemblyInfo.cs源文件中加入以下面的屬性:
[assembly:AssemblyKeyFile("C:\keypair.snk")]3d
(若是有源代碼的狀況下,也能夠直接使用項目配置來使類庫項目直接生成並綁定密鑰對。配置如:右擊「類庫項目」->「屬性」->「簽名」選項卡->選擇「爲程序集簽名」複選框->「選擇強名稱密鑰文件(K):」下拉框->「新建」或「瀏覽」選擇一個已存在的密鑰文件。)
b. 生成項目便可獲得擁有強名稱的類型庫
(2)若是你只有第三方的類庫(xxxxxx.dll)文件而沒有源碼項目的話,須要繼續作以下操做。
a. 使用類庫文件獲取微軟中間語言(MSIL)源碼文件。
C:\>ildasm xxxxxx.dll /out:xxxxxx.il
b. 使用MSIL源碼文件(xxxxxx.il)和新生成的(keypair.snk)密鑰文件建立新的程序集類庫文件
C:\>ilasm xxxxxx.il /dll /key=keypair.snk
2、數據庫引入dll文件
備註:中間可能須要打開通道,百度不少方法。
create assembly api from 'D:\Odoo\api\bin\Debug\api.dll' with permission_set = UNSAFE go
3、建立函數
create FUNCTION [dbo].[test]( ) RETURNS [nvarchar] WITH EXECUTE AS CALLER AS EXTERNAL NAME [api].[api.Class1].[test] GO
4、調用函數
print dbo.test()