日期:2014-05-18  浏览次数:20579 次

【交流】SQL2005CLR函数扩展-字符串函数
blog地址,欢迎大家访问我的blog
http://blog.csdn.net/jinjazz/archive/2009/04/23/4101974.aspx


c#代码的类库和注册方法直接到我的blog上去看就可以了,由于函数比较多,我这里只演示几个测试例子

SQL code
--获取@startIndex之后的首个子串位置
select dbo.ufn_CharIndexOfStartIndex('jinjazz','jinjazz,jinjazz@csdn.net',2)
--【返回8】


SQL code
--@startIndex位置插入子串
select dbo.ufn_CharInsert('jinjazz','我爱这个人',2)
--【返回:我爱jinjazz这个人】


SQL code
--首尾截断子串
select dbo.e @str varch


SQL code
--时间格式化 
select dbo.ufn_DateTimeFormat(getdate(),'现在是yyyy年MM月dd日hh点mm分ss秒')
--【返回:现在是2009年04月22日11点58分51秒】


SQL code
--数字格式化
select dbo.ufn_DoubleFormat(114534562.876,'c')
--【返回:¥114,534,562.88】



更多内容请关注我的blog------by jinjazz

------解决方案--------------------
CLR和T-SQL类似,可以返回处理后的结果集、处理的消息或者通过输出参数返回对应的返回值。与T-SQL相比,CLR提供强大的面向对象设计的功能,通过面向对象的封装、继承和多态性,实现CLR的面向对象处理功能。基于.Net framework的高级编程语言,可以很容易在类和命名空间中进行组织和管理对应的数据库类型对象。同时,可以更容易地组织和维护代码,通过使用托管代码而实现高级数据库功能。前面提到,对于计算和复杂的执行逻辑,基于CLR的托管代码比TSQL 更适合,托管代码的一个优点是类型安全性,它全面支持许多复杂的任务,包括字符串处理和正则表达式。通过.NET Framework 库中提供强大的类库和第三方开发的类库,可以访问大量预生成的类和例程。这些基类库包括的类提供用于字符串操作、高级数学运算、文件访问、加密等的功能。