WEB开发网
开发学院数据库MSSQL Server SQL Server 2005上的CLR和ADO.NET 2.0 阅读

SQL Server 2005上的CLR和ADO.NET 2.0

 2007-05-15 09:28:44 来源:WEB开发网   
核心提示: 图2:单个Assembly的执行过程图3:Assembly调用链的安全检查这样做的好处在于:可以大大丰富SQL Server的对象系统,相信很多T-SQL设计人员在进行数据库设计的时候,SQL Server 2005上的CLR和ADO.NET 2.0(2),会碰到因为相对非常有限的数据类型

图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一并完成。

上一页  1 2 3 4 5  下一页

Tags:SQL Server CLR

编辑录入:coldstar [复制链接] [打 印]
赞助商链接