DB2 - con XML

Este capítulo describe el uso de XML con DB2.

Introducción

La función PureXML le permite almacenar documentos XML bien formados en columnas de tablas de bases de datos. Esas columnas tienen una base de datos XML. Los datos se mantienen en su forma jerárquica nativa almacenando datos XML en una columna XML. La funcionalidad del servidor de bases de datos DB2 puede acceder y gestionar los datos XML almacenados. El almacenamiento de datos XML en su forma jerárquica nativa permite una búsqueda, recuperación y actualización eficientes de XML. Para actualizar un valor en datos XML, debe utilizar XQuery, SQL o una combinación de ambos.

Crear una base de datos y una tabla para almacenar datos XML

Cree una base de datos emitiendo la siguiente sintaxis:

Syntax:

db2 create database xmldb

De forma predeterminada, las bases de datos utilizan un conjunto de códigos UTF-8 (UNICODE). Active la base de datos y conéctese a ella:

Syntax:

db2 activate db <db_name>
db2 connect to <db_name>

Example:

db2 activate db xmldb 
db2 connect to xmldb

Cree un archivo XML bien formado y cree una tabla con el tipo de datos de la columna como 'XML'. Es obligatorio pasar la consulta SQL que contiene la sintaxis XML entre comillas dobles.

Syntax:

db2 “create table <schema>.<table>(col <datatype>, 
col <xml datatype>)”

Example:

db2 "create table shope.books(id bigint not null 
primary key, book XML)"

Inserte valores xml en la tabla, los documentos XML bien formados se insertan en la columna de tipo XML utilizando la instrucción SQL 'INSERT'.

Syntax:

db2 “insert into <table_name> values(value1, value2)”

Example:

db2 "insert into shope.books values(1000, '<catalog>  
<book> 

<author> Gambardella Matthew</author> 
<title>XML Developers Guide</title> 
<genre>Computer</genre> 
<price>44.95</price> 
<publish_date>2000-10-01</publish_date> 
<description>An in-depth look at creating application 
with XML</description> 
</book> 

</catalog>')"

Actualizar datos XML en una tabla

Puede actualizar datos XML en una tabla mediante la siguiente sintaxis:

Syntax:

db2 “update <table_name> set <column>=<value> where 
<column>=<value>”

Example:

db2 "update shope.books set book='<catalog>  

<book> 
<author> Gambardella, Matthew</author>  
<title>XML Developers Guide</title>  
<genre>Computer</genre>  
<price>44.95</price>  
<publish_date>2000-10-01</publish_date>  
<description>An in-depth XML</description>
  
</book> 
 
</catalog>' where id=1000"