WEB开发网
开发学院数据库DB2 用DB2 pureXML执行不区分大小写的高效搜索 阅读

用DB2 pureXML执行不区分大小写的高效搜索

 2009-03-04 16:38:23 来源:WEB开发网   
核心提示:根据定义,XML 元素和属性的值是区分大小写的,用DB2 pureXML执行不区分大小写的高效搜索,例如,如果搜索值为 “Paris” 的 元素,如果数据来自不同的应用程序,而这些应用程序采用不同的大小写数据输入规则,那么不会找到 “PARIS” 或 “par

根据定义,XML 元素和属性的值是区分大小写的。例如,如果搜索值为 “Paris” 的 元素,那么不会找到 “PARIS” 或 “paris”。可以使用 fn:upper-case() 等 XQuery 函数解决这个问题,但是使用这些函数时不能使用 XML 索引,所以性能可能不好。本文解释如何使用 DB2® pureXML™ 创建不区分大小写的数据库以及让 XML 查询和 XML 索引发挥预期的作用。用大写和小写函数执行不区分大小写的搜索

下面的示例帮助您更清楚地理解不区分大小写的搜索。清单 1 定义一个包含一个 INTEGER 列和一个 XML 列的表,并在表中插入 7 行。每行包含一个小的客户文档,其中包含 XML 元素

此元素中的值在大小写方面并不一致。一些值是全大写的,一些是全小写的,其他是大小写混合的(首字母大写)。如果数据来自不同的应用程序,而这些应用程序采用不同的大小写数据输入规则,就会出现这种情况。

清单 1. 示例表和数据

CREATE TABLE customer (id INTEGER, xmldoc XML);

INSERT INTO customer (id, xmldoc)
VALUES (1,'<Customer id="1"><city>PARIS</city></Customer>'),
    (2,'<Customer id="2"><city>Tokyo</city></Customer>'),
    (3,'<Customer id="3"><city>tokyo</city></Customer>'),
    (4,'<Customer id="4"><city>PARIS</city></Customer>'),
    (5,'<Customer id="5"><city>paris</city></Customer>'),
    (6,'<Customer id="6"><city>Delhi</city></Customer>'),
    (7,'<Customer id="7"><city>Paris</city></Customer>');

1 2 3 4 5  下一页

Tags:DB pureXML 执行

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接