char、nchar、varchar、nvarchar、text、ntext)传递给存储过程。OPENXML 语句可与其他 Transact-SQL 语句一起使用来提供 XML 数据的行集视图,因此执行插入、更新、删除和联接等关系操作时可以将 XML 文档作为数据源。这可以用来通过单个存储过程调用对数据库执行多行、多表更新。 ICommandStream 接口用来向 OLE DB 传递需要处理的模板。另外,OLE-DB 提供程序的属性集也得到扩展,允许支持 IStream 的对象规范返回 XML 结果以及支持使用通过映射架构定义的 XML 视图进行 XPath 查询。流对象是在 ADO 2.5 中引入的,现在可以与新引入的语言分支一起用来向数据库发送 XPath 查询和从数据库接收 XML 结果。 SQL Server 2000
Oracle
SQL Server 2000 集成的 XML 功能允许通过最少的编程工作启用系统。
Oracle 不带任何集成 XML 特定功能。
XPath 支持
Transact-SQL FOR XML 扩展
Transact-SQL OPENXML 扩展
允许用户利用其 SQL 技能快速启用应用程序,而不必进行额外的编程工作。
SQL Server 2000 提供了到 SQL 语言的内在扩展,可以用来从标准 SQL 查询返回 XML 数据。
Oracle 提供的服务器端实用工具未对标准 SQL 进行扩展,要求额外编程才能返回 XML 数据。
Transact-SQL OPENXML 扩展
这些方法为通过网络连接访问 XML 数据的编程人员带来了灵活性。
SQL Server 2000 和 Oracle 均支持使用不同方法访问数据库中的 XML 数据。
OLE DB/ADO 访问
JDBC
OLE DB/ADO 访问
JDBC
XML 模板允许在服务器中间层上存储 XML 商业逻辑。
SQL Server 和 Oracle 均支持通过可选参数在服务器上存储 XML 查询模板。
XML 模板
XSQL 模板
Web 访问
网络连接 Internet 应用程序要求安全的访问。
SQL Server 2000 提供了可在单表级上管理的安全性。
Oracle 提供了有限级别的安全性并支持加密整个数据库所有者,但不支持单表级的安全性。
SQL Server 2000 和 Oracle 均提供了搜索复杂文本文档(包括 XML)的支持。
编程人员在设计 XML 应用程序时可使用这些工具获得最大的能力和灵活性。