SQL Server 2005は、XML列に対して、XQuery 1.0とXPath 2.0をサポートする。
W3CによるXQuery仕様では、XQuery 1.0、XPath 2.0、XSLT 2.0において、6つのワーキングドラフトを含んでいる。これらのワーキングドラフトは、2004年夏に「最終ドラフト仕様」となった。ベータ3が登場する前に、仕様書は、「最終ドラフト仕様」から「勧告(Recommended)」のステータスになるだろう。
XQueryのライブデモページ(本稿末のリソース参照)に訪れると、XQueryの文法を習得することができるだろう。
マイクロソフトは、XQueryの結果セットがリレーショナルデータを含む時に、「sql:column」と「sql:variable」という名前空間を使って値を返す機能が拡張されている。
XQuery 1.0ではテーブルの更新はサポートされない。しかしSQL Server 2005では、標準化されていない「XML data manipulation language(DML)」の書式を使うことで、データの更新をサポートする。
ベータ2のXQueryの実装では、W3Cの「XQuery 1.0: An XML Query Language」ドラフトの「3.8 X FLWOR Expressions」に含まれる、「for, let, where, order by, return」の書式を完全にはサポートしない。
変数をバインディングするletキーワードは、実装されていない。また、order byキーワードでは、「empty lease」「empty greatest」「collation」がサポートされていない。筆者は、letキーワードが、リリース前に実装されることを望んでいる。
AdventureWorksサンプルデータベースとBooks OnlineのXQueryの例は、XQuery 1.0やXPath 2.0のクエリ、そして、その他のSQL Server 2005の新機能をマスターするのに役立つだろう。
データベースエンジンのサンプルは、3つのXMLプロジェクトを含む9つのカテゴリの約45のプロジェクトおよびスクリプトから構成されている。
日本語訳:大澤文孝
次回後編では、T-SQL新機能についてを始め、HTTPエンドポイント作成、Service Broker利用のプログラミングなどについて紹介していく。
© Copyright 2001-2005 Fawcette Technical Publications