频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

将XML应用程序从DB2 8.x迁移到Viper(1)

作者: 出处:51CTO.com  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2007-01-23 17:07
关 键 词:XMLDB2  Viper
阅读提示:本文是关于将XML应用程序从DB2 8.x迁移到DB2 Viper的三篇系列文章中的第一篇。该系列从描述一个基于Java的存储过程开始,您可以使用该存储过程来对XML数据执行子文档更新。您可以下载更新后的存储过程的源代码和jar文件,并根据说明安装它。本文描述的更新存储过程允许对本机存储在数据库中的XML文档进行部分更新。

简介

DB2 Universal Database (UDB) Version 8.x 中的 XML 支持基于 DB2 的关系基础设施。在 DB2 Viper 版本之前,XML 数据要么原样存储为字符大对象 (CLOB),要么被分解到关系表中。

相反,DB2 UDB Version 9.1 具有对 XML 数据的真正本机支持。XML 现在被当作新的数据类型,XML 数据存储在经过解析的带注释的树中,独立于关系数据存储。基于 XML 模式的 XML 索引已经引入,同时还引入了对用于查询和发布 XML 数据的语言 XQuery 和 SQL/XML 的支持。为了理解这些新的 XML 特性对迁移的重大意义,需要将 DB2 8.x 中用于存储和查询 XML 数据的不同技术与 DB2 UDB Version 9 中可用的类似的或新的 XML 功能相比较。

本文是关于将 XML 应用程序从 DB2 8.x 迁移到 DB2 Viper 的三篇系列文章中的第一篇。该系列从描述一个基于 Java 的存储过程开始,您可以使用该存储过程来对 XML 数据执行子文档更新。您可以下载更新后的存储过程的源代码和 jar 文件,并根据说明安装它。

第二篇文章比较 DB2 Version 8.x 中和 DB2 Viper 中的 XML 特性。然后简要讨论 DB2 Viper 中引入的新 XML 特性,并详细介绍新 XML 支持对于迁移现有基于 XML 的应用程序的重大意义。这篇文章还包括基于 Java 的实用工具的源代码,该工具用于帮助生成迁移数据库对象时所需的脚本。

本系列的最后一篇文章介绍分步示例迁移场景。它包括示例场景的源代码。

更新存储过程

对于本机存储在 DB2 中的 XML 文档,不存在用于执行子文档更新的开箱即用的功能。缺少该功能的原因是,目前还没有定义 Xquery 中更新的标准。

该问题的一种解决方案是,将文档交给客户机,修改它,然后再将其保存到数据库中。该方法受到客户机环境的 XML 功能的限制,并且还要求专家级的人员编写基于文档对象模型 (DOM) 的客户机。

通过创建更新存储过程,可以更新数据库中的 XML 文档而无需将其交给客户机。该存储过程支持对本机存储在数据库中的 XML 文档进行部分更新。

存储过程允许:

◆更改目标 XML 文档中任何文本或属性节点的值
◆使用另一个 XML 元素替换 XML 文档中的元素节点(及其所有子节点)
◆删除 XML 文档中的节点
◆插入新元素
◆多次更新源文档
◆更新多个源文档
◆使用修改的 XML 文档替换另一个 XML 文档
◆将修改的文档插入新记录

更新信息可以:

◆静态地嵌入更新调用中
◆使用 SQL 在运行时动态地创建
◆使用算术表达式基于初始文本或属性值进行计算

注意:在后台,更新存储过程仍然执行完整的文档更新。

XMLUPDATE 命令

DB2XMLFUNCTIONS.XMLUPDATE (commandXML、querySQL、updateSQL、errorCode、errorMsg)

commandXML —— 该参数是一个用于封装更新命令的 XML 字符串。这些命令将应用到由 querySQL 所选择的 XML 文档。

该命令的结构是:

<updates namespaces="">
<update using="" col="" action="" path="">update value</update>
</updates>

—— 这是用于包装所有更新命令元素的根元素。

@namespace —— 该属性的值应该是由分号分隔的 “前缀:名称空间” 字符串。前缀然后用于在 XML 文档中导航时使用的任何路径表达式中。

Essential —— 否(仅当在任何路径中使用名称空间时才需要它)。

即使是默认名称空间也必须用一个前缀进行限定。

—— 该元素定义需要在目标 XML 文档上执行的每个修改。

Occurrence —— 可以定义这些元素中的一个或多个。

每次出现处理文档的一个修改。

@col —— 该属性的值应该是对应于要在 querySQL 中修改的列位置的编号。


共5页: 1 [2] [3] [4] [5] 下一页
【内容导航】
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看59044次)
·UML类图详解 (查看53826次)
·UML统一建模语言 (查看29975次)
·C#技术开发指南 (查看28136次)
·Java编程开发手册 (查看27916次)
·Java编程开发手册 (1195个砖)
·Java基础教程 (429个砖)
·C#技术开发指南 (306个砖)
·.NET开发手册 (228个砖)
·PB开发教程 (223个砖)
·Java编程开发手册 (654个好)
·Java基础教程 (570个好)
·.NET开发手册 (265个好)
·PB开发教程 (211个好)
·Delphi开发技术手册 (181个好)
订阅技术快讯
电子杂志下载
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有