DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 809|回复: 0
打印 上一主题 下一主题

[待整理] 使用IBM DB2 XML 验证技术

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-13 15:20:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个存储库,例如关系数据库,可以为授权用户安全地共享 XML 文档和 XML 模式提供一个环境。授权用户可以在任何时候、任何地方安全地访问重要的 XML 文档和 XML 模式。通过使用可包含一个或多个关系数据库系统的存储库系统,用户可以找到并检索最新版本的 XML 文档和 XML 模式文档。DB2? 9 为 XML 提供了新的支持,对于这种新支持,.Net 应用程序开发人员可以很快地上手。这是因为 DB2 9 让程序员可以像对待关系数据那样查询、插入、更新和删除 XML 数据 —— 使用熟悉的 ADO .Net 语句和标准的查询语言。本文展示一些关于如何使用 .Net 构建采用 DB2 XML 技术的应用程序的详细示例。DB2 XML 技术允许以 XML 原有的分层格式来存储、验证和查询 XML。

  DB2 中的 XML 支持

  DB2 9 为管理、存储和查询 XML 数据引入了一些新的特性和机制:

  XML 数据类型使 DB2 可以以 XML 本身的分层格式来存储 XML 文档。
  XML 查询语言支持基于业界标准,并包括新的对 SQL 的 XML 扩展(也称 SQL/XML)。
  支持基于用户提供的模式验证 XML 数据,这使得应用程序开发人员和数据库管理员可以对 DB2 中存储的 XML 数据实施数据完整性约束。本文中的例子使用 DB2 Visual Studio 2005 Add-in。
  本文中的代码示例引用了 CARPOOL 表,该表记录旧金山和圣何塞两地关于合伙用车的信息。清单 1 展示了该表的定义。另外,还需确保数据库启用了 XML。

  环境设置

  注意:应确保 SAMPLE 数据库在创建时启用了 XML(见后面的定义)。

  本文需要使用 Visual Studio .NET 2005 和 DB2 9。这两个产品的安装很简单。建议先安装 Visual Studio .NET,然后再安装 DB2 9。请记住在安装 DB2 时所输入的用户 ID 和密码,因为在连接 DB2 时要使用它们。

  在 DB2 安装期间,应确保启用了 TCP/IP。如果在安装 DB2 之后不确定 TCP/IP 是否被启用,可以执行以下步骤进行检查:

  从 Windows Start 菜单中,选择 Programs > IBM DB2 > DB2(默认)[或者为 DB2 实例名称] > Command Line Tools > Command Window。
  在 DB2 命令窗口中,应该可以看到命令提示符 C:Program FilesIBMSQLLIBBIN>(如果使用默认安装路径的话)。输入 db2set。在返回的结果中,应该可以看到这一行: DB2COMM=tcpip。
  如果还没有为 DB2 启用 TCP/IP,那么可以输入以下命令来启用 TCP/IP:

  db2set db2comm=tcpip
  db2 update dbm cfg using svcename 50000
  db2stop
  db2start
  安装了 DB2 之后,可以选择创建 DB2 SAMPLE 数据库。如果选择这么做,那么应接受默认设置,但务必选择 XML and SQL objects and data 选项。

        为了检查系统设置是否成功,启动 Visual Studio .NET 2005。在 Visual Studio .NET 中,选择 File > New > Project。在 New Project 对话框中,在左侧面板中应该可以看到 IBM Projects。关闭该对话框。在 Server Explorer 中,连接到 DB2 SAMPLE 数据库。确认在 Server Explorer 中可以看到 XML Schema Repository 树节点。如果没有看到,那么可能需要重新创建 SAMPLE 数据库,以启用 XML 特性。  清单 1. CARPOOL 表定义
CREATE TABLE CARPOOL (
             ID INTEGER NOT NULL,
             FIRSTNAME VARCHAR ( 256 ) ,
             LASTNAME VARCHAR ( 256 ) ,
             TITLE VARCHAR ( 15 ) ,
             PHONE VARCHAR ( 20 ) ,
             CARPOOLINFO XML ,
             CONSTRAINT CARPOOL_PK PRIMARY KEY (ID))

  这里有两个 XML 模式,CarpoolInfo.xsd 和 USAddressType.xsd,其中 CarpoolInfo.xsd 引用了 USAddressType。
  清单 2. 用于验证 CARPOOL 表中的 XML 文档的 XML 模式(CarpoolInfo.xsd)
<?xml version="1.0" encoding="utf-8"?>
            <xs:schema targetNamespace="http://tempuri.org/XMLSchema.xsd"
            elementFormDefault="qualified" xmlns="http://tempuri.org/XMLSchema.xsd"
            xmlns:mstns="http://tempuri.org/XMLSchema.xsd"
            xmlns:xs="http://www.w3.org/2001/XMLSchema">
              <xs:include id="USAddress.xsd" schemaLocation="USAddress.xsd" />
              <xs:element name="CARPOOLINFO">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="StartTime" type="xs:string" />
                    <xs:element name="Address" type="USAddress" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:schema>
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-15 12:11 , 耗时 0.079715 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表