在 DB2 中管理 XML Schemas,第 2 部分: XML Schemas 演变和 XML 数据管理
2010-04-12 00:00:00 来源:WEB开发网如果按如下所示删除其中一个 XML schema,那么发出上述 INSERT 语句将会成功。
DROP XSROBJECT SAMPLE2.CUST2;
因此,使用新的 XML schema 替换现有 XML schema 后,需要将新的 XML schema 删除掉。为此,可以在 UPDATE XMLSCHEMA 命令中使用 DROP NEW SCHEMA 选项。
UPDATE XMLSCHEMA SAMPLE2.CUST1 WITH SAMPLE2.CUST2 DROP NEW SCHEMA;
另一个需要考虑的问题是,schema 位置也被新的 schema 位置替换。结果,包含在现有 XML 数据中的 schema 位置不匹配。这个问题可以通过使用现有 schema 位置注册新的 XML schema 来解决,如下所示:
REGISTER XMLSCHEMA 'cust1.xsd' FROM '/work/cust2.xsd' AS SAMPLE2.CUST2;
COMPLETE XMLSCHEMA SAMPLE2.CUST2;
然后再次使用 DROP NEW SCHEMA 选项更新 XML schema。
UPDATE XMLSCHEMA SAMPLE2.CUST1 WITH SAMPLE2.CUST2 DROP NEW SCHEMA;
这样,即使在替换 XML schema 之后,验证 XML 数据时也可以使用 schema 位置。
如果 XML schema 被更新为与现有 XML schema 具有向上兼容性,则现有 XML 数据无需任何更改就可以通过新的 XML schema 进行管理。另一方面,要保持向上兼容性,新添加的元素和属性必须是可选的,这样,即使您想要新添加的信息成为必要信息,也不能验证它们是否存在。(在上面的示例中,添加了 cell-phone元素。但该元素作为可选元素添加,以便没有 cell-phone元素的 XML 数据也可以成功通过验证。)要了解向上兼容性的其他要求,请参阅 DB2 信息中心和 developerWorks 文章 “Evolving your XML schemas using DB2 pureXML”。
- ››db2 对float类型取char后显示科学计数法
- ››DB2中出现SQL1032N错误现象时的解决办法
- ››DB2 锁升级示例
- ››db2诊断系列之---定位锁等待问题
- ››db2 命令选项解释
- ››管理/var/spool/clientmqueue/下的大文件
- ››XML 转成 数组对象
- ››XML注意的转义字符
- ››xml文件正确性验证类实现
- ››DB2 最佳实践: 使用 DB2 pureXML 管理 XML 数据的...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
更多精彩
赞助商链接