SQL Server 2005上的CLR和ADO.NET 2.0
2007-05-15 09:28:44 来源:WEB开发网图2:单个Assembly的执行过程
图3:Assembly调用链的安全检查
这样做的好处在于:可以大大丰富SQL Server的对象系统。
相信很多T-SQL设计人员在进行数据库设计的时候,会碰到因为相对非常有限的数据类型无法描述业务对象的情况。但有了CLR的支持,SQL Server 2005可以描述的对象系统基本上扩展为无限。但是,笔者这里根据经验提醒用户在使用该功能的时候要注意如下几个内容:
1.设计新的数据对象要考虑到中间结果的存储问题。
2.涉及到查询的时候还是要考虑采用T-SQL,这主要是出于效率问题。
3.尽可能考虑到事件、Delegate回调对于处理性能的影响,不是必要的话尽量不用。
可以把整个开发的流程完全集成到统一的Visual Studio 2005中,全开发生命期可以在一个框架下完成。
更深层次讲,在完成统一个项目的时候,可以充分利用CLR进行复杂数据结构的计算能力效率和T-SQL的关系数据处理能力优势。
开发基于CLR的数据库对象
通过CLR的集成,可以在SQL Server 2005中建立如下的一些数据类型:
Scalar-valued user-defined functions (scalar UDFs)
Table-valued user-defined functions (TVFs)
User-defined procedures (UDPs)
User-defined triggers
上述四个类型算是基本的数据类型,因为它可以直接地映射到类的公共静态方法,除此之外还可以定义更为复杂的用户聚合函数。由于受到访问能力的限制,在SQL Server 2000中用户自定义函数能访问的对象有限,但是SQL Server 2005借助.NET平台甚至于可以把一些计算通过协调远端的Web Service一并完成。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接