议决运用递次存储和检索 XML
与 XML 相干的 DBA 的任务:索引、束厄局促和视图
DBA 认证教程没有谈到 XML 索引,因此 DBA 或者会向您请教怎样为 XML 列建索引。下面是一些提示:
-
参阅 DB2 Information Center 中的 "Common XML indexing issues"。
-
倘使进展盘考速度更快,索引的范围必须与盘录取的 XPath 相等,也许比 XPath 的范围更年夜。一个运用通配符
*
或//
的 XPath,其范围比指定到所需节点的切实途径的 XPath 的范围更宽。
-
可以将 XML 索引定义为
UNIQUE
,这是在 XML 字段上施加UNIQUE
束厄局促的埋头方法。与关系UNIQUE
索引一样,埋头性被运用于整个表,而否则则一个文档。
-
DB2 不支撑复合 XML 索引,然则议决将所需的元素放在一个年夜众父元素下,然后在父元素上创建一个 XML 索引,可以绕过这个限制:
<name> <family>Payne</family> <given>Donald</given> <middle>Edwin</middle> </name>
XPath
name
上的索引将索引子元素中的文本衔接。另一种途径是 DB2 Net Search Extender。后者已经被加强,刻下当今完全支撑 XML 列,包孕类似搜索和通配符搜索。
-
没无方法可以直接在 XML 数据上创建参照齐备性束厄局促。然则可以议决将选择的字段撕碎到具有所需束厄局促的关系列中,来绕过这个限制。
-
可以用
XMLDOCUMENT()
、XMLELEMENT()
之类的 SQL/XML 函数在关系数据上创建 XML 视图。 还可以用XMLTABLE()
在 XML 数据上创建关系视图。 然则,屡屡更无效的做法是议决 XQuery 或 SQLXMLQUERY()
盘考 XML 数据,而运用 SQLSELECT
盘考关系数据。 倘使盘考关系数据上的 XML 视图,那么盘考编译器和优化器不能行使关系索引,反之亦然。
版权声明: 原创作品,同意转载,转载时请务必以超链接方式标明文章 原始情由 、作者信息和本声明。否则将清查司法责任。