zoukankan      html  css  js  c++  java
  • SQL2005CLR函数扩展繁简转换

    这个方法比较简单,用Microsoft.VisualBasic命名空间下强大的字符串处理函数就可以了

    c#代码如下,编译为BigConvertor.dll


    using System;

    using System.Data.SqlTypes;

    using Microsoft.SqlServer.Server;

     

    public partial class UserDefinedFunctions

    {

        [Microsoft.SqlServer.Server.SqlFunction ]

        public static SqlString BigToGB(SqlString inString)

        {

            if (inString.IsNull) return SqlString .Null;

            return (Microsoft.VisualBasic.Strings .StrConv(inString.Value, Microsoft.VisualBasic.VbStrConv .SimplifiedChinese, 0));

        }

         [Microsoft.SqlServer.Server.SqlFunction ]

        public static SqlString GBToBig(SqlString inString)

        {

            if (inString.IsNull) return SqlString .Null;

            return (Microsoft.VisualBasic.Strings .StrConv(inString.Value, Microsoft.VisualBasic.VbStrConv .TraditionalChinese, 0));

        }

    };


    部署代码如下

     


    CREATE ASSEMBLY BigConvertor FROM 'E:/sqlclrdata/BigConvertor.dll' WITH PERMISSION_SET = UnSAFE;

    --

    go

    CREATE FUNCTION dbo. xfn_BigToGB 

    (  

        @value nvarchar ( max )

    )    

    RETURNS nvarchar ( max )

    AS EXTERNAL NAME BigConvertor. UserDefinedFunctions. BigToGB

    go

    CREATE FUNCTION dbo. xfn_GBToBig 

    (  

        @value nvarchar ( max )

    )    

    RETURNS nvarchar ( max )

    AS EXTERNAL NAME BigConvertor. UserDefinedFunctions. GBToBig

     

    go


    测试代码如下


    /* 测试 */

    select dbo. xfn_GBToBig( ' 简体与繁体文的转换 ' )

    -- 簡體與繁體文的轉換

    select dbo. xfn_BigToGB( ' 簡體與繁體文的轉換 ' )

    -- 简体与繁体文的转换

     

     

  • 相关阅读:
    NSPredicate的用法、数组去重、比较...
    CocoaPods安装和使用教程
    UITableView学习笔记
    Linux dpkg 命令
    Linux rpm 软件包管理命令
    Linux chmod 文件权限命令
    Linux vi 命令
    分库分表背后那些事儿
    Spring Cloud Feign原理及性能
    linux "No space left on device" 磁盘空间解决办法
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6204833.html
Copyright © 2011-2022 走看看