国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQL Server中調用C#類中的方法實例(使用.NET程序集)

2024-08-31 01:02:36
字體:
來源:轉載
供稿:網友

需求是這樣的,我在.net程序里操作數據時將一些字段數據加密了,這些數據是很多系統共用的,其中一delphi程序也需要用到,并且需要將數據解密,由于我在.net里加密的方式比較特殊,在delphi程序里解密比較繁瑣且要消耗很多時間,所以不得不讓sqlserver調用程序集的方式來解決問題。

下面只是一個例子,貼出來共享。

建立一個dll,class,代碼如下:

復制代碼 代碼如下:


namespace MyDll
{
    public partial class MyClass
    {
        [SqlMethod]
        public static SqlString UrlDecode(string value)
        {
            return new SqlString(HttpUtility.UrlDecode(value));
        }
    }
}

放到數據庫服務器上。

之后運行下面的T-SQL代碼:

復制代碼 代碼如下:


EXEC sp_configure 'show advanced options','1';
GO
RECONFIGURE;
GO
EXEC sp_configure 'clr enabled','1'
RECONFIGURE;
GO
 
ALTER DATABASE DBName SET TRUSTWORTHY ON
GO
 
CREATE ASSEMBLY
[System.Web] FROM
'C:/WINDOWS/Microsoft.NET/Framework64/v2.0.50727/System.Web.dll'
WITH permission_set = UNSAFE
GO
 
CREATE ASSEMBLY SQL_CLR_Url
FROM 'C:/MyDLL.dll'
WITH PERMISSION_SET = UNSAFE
 
GO
 
CREATE FUNCTION SqlUrlDecode(@urlstr NVARCHAR(4000))
RETURNS NVARCHAR(4000)
AS
EXTERNAL NAME SQL_CLR_Url.[SqlClr.MyClass].UrlDecode
GO

然后就可以在T-SQL里調用這個函數了。

復制代碼 代碼如下:


select dbo.SqlUrlDecode(Name) from Table

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黄浦区| 美姑县| 塘沽区| 通渭县| 云南省| 武宁县| 来凤县| 湘阴县| 建湖县| 通海县| 南充市| 红河县| 宁陕县| 太湖县| 琼海市| 丰台区| 陆河县| 澳门| 汶上县| 焦作市| 阿坝县| 达尔| 门头沟区| 玉屏| 灵武市| 岐山县| 十堰市| 庐江县| 当雄县| 白河县| 郯城县| 西峡县| 余庆县| 界首市| 湛江市| 汉寿县| 长岭县| 邻水| 新田县| 五大连池市| 恩平市|