SQL Server 2005 数据库开发新架构(2)


SQL Server 2005 数据库开发新架构(2)

SQL 管理对象

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的特有的管理特性。

SMO 和 SQL-DMO

SMO 对象模型是SQL-DMO 的延续。SMO和SQL-DMO 在特性上是兼容的,包含很多相同的对象。Where possible, the original SQL-DMO design is followed, 但是SMO 有很多SQL-DMO 没有的附加特性。为了实现SQL Server 2005中更多的DDL和管理功能,SMO增加了150多个新类。

SMO的主要优点是性能和可伸缩性。SMO有缓存对象模型,它允许在对SQL Server应用改变之前改变对象的一些属性。因此,SMO会更少的和服务器往返通讯,而且使得对象更加灵活。SMO也有优化过的实例,这意味着你可以部分或全部的实例化一个对象,这样你就不用实例化对象的所有属性,从而可以快速的装载多个对象。

和SQL-DMO只有一个单一的应用程序根目录来保持对所有创建的服务器对象的引用不同的是,SMO允许为多个服务器建立多个根,而无需建立一个新的连接。SMO除了支持SQL-DMO类型的脚本外,还支持先进的多段脚本。你也可以把一个对象转入捕获模式来捕获所有施加在这个对象上的DDL,无需对服务器做实际的改变。

为了支持“WMI监控”和“通过SMO对象接口的服务端配置”,SQL-DMO也有一个可控制的计算机对象,这个对象能够简化到WMI的接口。

XML 技术

XML已经成为一种存储和交换数据的通用格式,是那些带标记的、结构化或半结构化信息的常用选择,如:文本(带有标示文档结构和重点的标记),嵌套对象(结构化的),异类数据(半结构化的)。 XML也是一种用来在网络上不同应用程序间散布数据的重要的、被广为接受的标准。

Microsoft SQL Server 2000 支持通过Microsoft SQLXML来使用XML, 它允许你把关系型数据转换为XML,把XML数据存在关系型表中。Microsoft SQL Server 2005 Beta 2通过把XML作为一类数据类型来实现这一功能,此外,它还提供了针对XML文档的新的查询语句和定位修改。

为了更好的满足用户使用XML数据的要求,Microsoft SQL Server 2005 Beta 2引入了一种新的XML数据类型。这种数据类型有多种方法—query(), exist(), value(), nodes()modify(),它们实现了XML查询 (XQuery)规范中最重要的子集部分。事实上,SQL Server 2005 Beta 2已经扩充了这一规范的XML数据修改部分。为了支持XML类型,增加了相应的关键字用于注册和管理XML schema。FOR XML 和OPENXML也有所改变,它们在SQL Server 2000中被引入用来在关系型数据和XML之间互相转换,在SQL Server 2005 Beta 2中对此有所增强以更好的支持XML数据类型。

XML 数据类型

XML能够比SQL Server所支持的那些标量数据类型更好的对复杂数据进行建模。例如那些基于字符串的内置数据类型char 或者是varchar并不能够充分有效的利用XML数据的大量优点。举例来说,如果XML被存储为一个字符串,那么你可以插入或检索整个XML文档,甚至能够从中检索连续的字符,但你不能定位查询文档中内容。通过XML数据类型,SQL Server 2005使我们能够查询XML文档中的一部分,校验文档是否满足XML schema,甚至能够定位修改文档中的内容。 它也将传统的关系型数据和非结构化和半结构化的数据集成在一起,而这在SQL Server 2000中是不可能的。在SQL Server 2005中, XML数据被作为二进制大对象 (BLOBs)内部存放,使得重解析和压缩更有效。

一个XML schema集可以和类型化XML的一列相关联,这样便能够对已存储的XML数据的约束、插入、改写、值的类型进行校验,也能够优化存储和查询性能。SQL Server 2005 也提供了一些DDL 语句用于管理服务器上的schema。

读写 XML

SQL Server 2005 Beta 2 也对在SQL Server 2000中引入的FOR XML 和 OPENXML 功能作了增强。

FOR XML

SQL Server 2000 中的FOR XML 字句并不支持在服务器上处理XML结果,你不能把XML结果存在表中,或分配给一个变量。SQL Server 2005 Beta 2 通过支持XML数据类型和在服务器端处理XML增强了FOR XML功能,实现这一点是通过在FOR XML中增加TYPE 指示。例如,SELECT...FOR XML TYPE 语句所生成的XML数据类型的结果集可被分配给一个本地的XML变量,也可被用在INSERT 语句中用来插入XML数据类型列。 PATH 样式指定了列的值如何表现在XML数的路径中。包含在FOR XML中的TYPE和PATH选项简化了复杂XML的生成,比FOR XML EXPLICIT查询更易使用。

OPENXML

SQL Server 2000 基本上把FOR XML 子句和OPENXML 行集函数配对使用。也就是说,可以用FOR XML把关系型数据检索为XML,用OPENXML可以把XML转为关系型数据,从而设置SQL连接和执行查询。SQL Server 2005 Beta 2 增强了OPENXML的功能。处理XML数据类型外,还支持几种新的数据类型,如用户定义类型(UDTs)。你可以在OPENXML WITH子句中使用它,你也可以传递一个XML数据类型实例给sp_preparedocument

XQuery 支持

XML 查询语言,或者XQuery是一种专为查询各种类型XML数据的智能和高效的语言。使用XQuery,你可以对XML数据类型列和变量进行查询。. 和许多XML 标准一样, World Wide Web Consortium (W3C) 组织监督着XQuery的开发。 XQuery由 Quilt 这种查询语言发展而来,它基于多种查询语言,如, XML Path Language (XPath) 1.0, XQL, 和 SQL, 它也把XPath 2.0 包含为一个子集。因此,如果你有使用XPath 1.0的经历,你可以不用从头学起。然而,它比XPath1.0有些显著的增强,如:类型化,特别的函数,支持更好的反复,结果集排序,结构等。

SQL Server 2005 Beta 2 提供了更多的XQuery 功能,它允许在数据层操作XML对象。它支持XQuery 1.0 Working Draft of November 15, 2003的一个静态类型子集。

DML 扩展

当前的 XQuery 规范包括查询的语法和语义词,但没有XML文档修改的部分。XML数据修改语言(DML)是XQuery数据修改特性的扩展, SQL Server 2005 Beta 2 增加了3个关键字: insert, updatedelete,他们都被用在XML数据类型的modify() 方法中。

新的应用程序框架

SQL Server 2005引入了新的SQL Server应用程序框:Service Broker。 Service Broker 是一个分布式应用程序框架,它在数据库到数据库级上提供了可靠的异步通讯。

SQL Service Broker

在过去10年来,电子商务应用的发展提出了在数据库应用程序间管理工作流的需求。当一个在线客户发出一个购书订单,这个订单需要提交在库存、送货、信用卡系统中提交事务,也需要使用另一个Web应用程序发出订单确认信息。等待这些应用依次完成并不是好的方法,SQL Server 2005 提供了一个新的可伸缩的架构用来构建异步信息处理。

Service Broker 技术通过使用T-SQL DML语言扩展允许内部或外部应用程序发送和接收可靠、异步的信息流。信息可以被发送到发送者所在数据库的队列中,获发送到同一SQL Server实例的另一个数据库,或发送到同一服务器或不同服务器的另一个实例。

Reporting Services

随着SQL Server 2005的发布, 微软在它集成商业智能平台上扩展了一个主要的组件。SQL Server Reporting Services 可以在任何商业环境中,非常容易的把正确的数据传递给正确的人,从而扩展了微软商业智能的前景。

Reporting Services 是一个创建、管理和发布传统和交互式报表的完全基于服务器的平台。它包括你创建、分发和管理报表所需的所有功能。与此同时,它的模块化设计和可扩展的应用程序编程接口(APIs)使软件开发者、数据提供者和企业能够把报表集成在现有系统和第三方应用程序中。

SQL Server 2005中的Reporting Services包括:

  • 一个完整的用来创建、管理和查看报表的工具。
  • 一个用来存储和处理报表的引擎。
  • 一个可扩展架构和开放接口,可在不同IT环境中嵌入报表和集成解决方案。
优质内容筛选与推荐>>
1、别扯了,这才是应对高并发的正确处理思路!
2、Hibernate详解(5)——Hibernate核心接口和工作原理
3、Fedora配置网络文件
4、pytorch判断tensor是否有脏数据NaN
5、Java-jdk10安装配置


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号