用户定义类型和聚合
SQL Server 2005中的用户定义类型并非对象的关系型扩展机制。它们是一种扩展数据库标量类型系统的方法。标量类型系统包括列类型是SQL Server自带的(像int, nvarchar, uniqueidentifier等)。使用用户定义类型,你可以定义可用在列定义上的自己的类型,如,Create a user-defined type if your type really is an atomic value that is appropriate to be modeled as a column.
如果你需要定义自己的标量类型,你可用使用用户定义类型。这些类型的例子包括在不同日历中定制的日期/时间数据类型,货币类型。使用用户定义类型,你可以创建一个单一的对象,把该类型的所有可用的行为开放出来,并且封装或隐藏存在类型中的基础数据,需要访问数据的每个人必须使用用户定义类型编程接口。如果你能利用.NET Framework 中的函数(如国际化或日历函数),这倒是另一个使用用户定义类型的好理由。
这还有很多关于聚合的例子,包括执行统计计算,如平均,方差等。如果需要的聚合函数不能直接由内建的聚合函数而得,在SQL Server 2005中,有三种方法来执行定制的聚合:
- 编写用户定义聚合
- 用CLR存储过程来写聚合
- 使用服务器端游标
SQL 管理对象(SMO)
SQL管理对象 (SMO)模型是SQL Server 2005的管理对象模型。SMO 在SQL Server管理对象模型上有显著的设计和结构上的提升。它是一个简单易用的,有着丰富的基于.NET Framework托管代码的对象模型。SMO 是开发数据库管理应用程序的主要的工具。SQL Server 管理工具集的每一个功能都可以用SMO来实现。
新的SMO对象模型和Microsoft Windows Management Instrumentation (WMI) APIs 替代了SQL-DMO,SMO比SQL-DMO更易使用。你依然可以使用SQL Server 2005 Beta 2中的SQL-DMO,但SQL-DMO 并不包含SQL Server 2005的特有的管理特性。
分析管理对象
分析管理对象 (AMO) 允许客户端应用程序使用一个对象库来访问分析服务的管理命令和管理功能。该对象库提供了对象级的校验功能,而不是手工的生成分析服务命令的DDL脚本。应用程序通过AMO能够连接到分析服务实例,且能直接操作其上的对象,或者在没有连接的情况下创建对象,保持元数据供以后的部署。
4、改进的数据访问和Web Services
在SQL Server 2005中,你可以开发数据库层的XML Web services,把SQL Server 作为一个HTTP listener。这对那些以Web services为中心的应用程序提供了新型的数据访问功能。在SQL Server 2005中,你可以使用HTTP直接访问SQL Server,无需使用IIS这样的中间层listener。SQL Server 开放了一个 Web service 接口, 可以执行SQL语句和调用函数和过程,查询结果可用XML格式返回,并且可以利用Visual Studio 的Web services 架构。
ADO.NET 2.0/ADOMD.NET
很多新的功能出现在下一个版本的ADO.NET中。从查询改变通知到多活动结果集(MARS),ADO.NET使数据访问和操作更加可伸缩和灵活。