ビューの作成 (XML)

xml 型の列を使用して、ビューを作成することもできます。次の例で、xml データ型の value() メソッドを使用して xml 型の列の値を取得するビューを作成します。

-- Create the table.
CREATE TABLE T (
    ProductID          int primary key, 
    CatalogDescription xml)
GO
-- Insert sample data.
INSERT INTO T values(1,'<ProductDescription ProductID="1" ProductName="SomeName" />')
GO
-- Create view (note the value() method used to retrieve ProductName 
-- attribute value from the XML).
CREATE VIEW MyView AS 
  SELECT ProductID,
         CatalogDescription.value('(/ProductDescription/@ProductName)[1]', 'varchar(40)') AS PName
  FROM T
GO 

このビューに対し、次のクエリを実行します。

SELECT * 
FROM   MyView

結果を次に示します。

ProductID   PName      
----------- ------------
1           SomeName 

xml データ型を使用してビューを作成する際には次の点に注意してください。

  • xml データ型は、具体化されたビュー内に作成できます。具体化されたビューは、xml データ型のメソッドに基づくことはできません。ただし、ベース テーブルの xml 型の列とは異なる XML スキーマ コレクションにキャストできます。

  • 分散パーティション ビューには xml データ型を使用できません。

  • ビューに対して実行される SQL 述語は、ビュー定義の XQuery には組み込まれません。

  • ビューの XML データ型メソッドは更新できません。

関連項目

その他の技術情報