SQLCLR(二)存储过程和自定义函数
自定义函数和存储过程在.net里其实都是方法。只是方法上方标注[Microsoft.sqlServer.Server.sqlProcedure]
和[Microsoft.sqlServer.Server.sqlFunction]不同而已。自定义函数又分TVF函数和Scalar两种,最大区别在于TVF返回表后者返回Scalar(标量),这一篇我们做一下比较。
先看两段代码
存储过程:
执行存储过程
结果如下
输出参数返回值
自定义函数
一,TVF函数
示例函数的作用是搜索目录下的某一类型的文件
因为这个函数对于sqlserver来讲要访问外部资源,所以需要配置一下项目和sqlserver2005
项目右键 属性, 数据库,权限级别选 外部
打开sqlserver2005查询分析器执行下边语句 TestProject 为我的数据库名,你的如果不是,当然需要修改了。
成功后,项目右键
部署。
查询分析器中执行
结果如下
二,Scalar 函数
这类函数返回类型如图,像sqlString这类sqlserver的scalar类型
下面就是这类函数的一个小例子。
sqlserver查询查询分析器中运行如下语句
结果如下
和[Microsoft.sqlServer.Server.sqlFunction]不同而已。自定义函数又分TVF函数和Scalar两种,最大区别在于TVF返回表后者返回Scalar(标量),这一篇我们做一下比较。
先看两段代码
存储过程:
结果如下
输出参数返回值
自定义函数
一,TVF函数
示例函数的作用是搜索目录下的某一类型的文件
@H_502_715@
项目右键 属性, 数据库,权限级别选 外部
打开sqlserver2005查询分析器执行下边语句 TestProject 为我的数据库名,你的如果不是,当然需要修改了。
查询分析器中执行
二,Scalar 函数
这类函数返回类型如图,像sqlString这类sqlserver的scalar类型
下面就是这类函数的一个小例子。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。