创建具有 XML 列的表

要创建具有 XML 列的表,在 CREATE TABLE 语句中指定 XML 数据类型的列。 一个表可以有一个或多个 XML 列。

定义 XML 列时不要指定长度。 在结构上对数据库中的 XML 值的大小没有限制。 然而,与 Db2 数据库交换的XML文本数据限于2个 GB-1 ,因此XML列的有效限制为2个 GB-1。

与 LOB 列一样,XML 列仅包含列的描述符。 数据单独存储。

定义XML列时,可以添加 XML类型修饰符。 XML类型修饰符将一组或一组以上的XML模式与XML数据类型相关联。 您可以使用XML类型修饰符,使存储在XML列中的所有XML文档根据类型修饰符中指定的XML模式之一进行验证。

当您在通用表空间中创建包含XML列的表时, Db2 会在更新操作期间维护多个版本的XML文档,以提高并发性和内存利用率。

示例 :客户数据表包含两个XML列。 定义如下所示:
CREATE TABLE CUSTOMER (CID BIGINT NOT NULL PRIMARY KEY,
                       INFO XML,
                       HISTORY XML)
示例 :客户数据表包含一个名为CONTENT的XML列。 XML列中的文档需要根据XML模式 SYSXSR.PO1 进行验证,该模式已经注册。 定义如下所示:
CREATE TABLE PURCHASEORDERS(
  ID INT NOT NULL,
  CONTENT XML(XMLSCHEMA ID SYSXSR.PO1))