Tworzenie widoków za pośrednictwem kolumn XML

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w usłudze Microsoft Fabric

Do tworzenia widoków można użyć kolumny typu xml . Poniższy przykład tworzy widok, w którym wartość z xml kolumny typu jest pobierana przy użyciu value() metody typu danych 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

Wykonaj następujące zapytanie względem widoku:

SELECT *
FROM   MyView;

Jest to wynik:

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

Zwróć uwagę na następujące kwestie dotyczące używania typu danych XML do tworzenia widoków:

  • Typ danych XML można utworzyć w zmaterializowanym widoku. Zmaterializowany widok nie może być oparty na metodzie typu danych XML . Można go jednak rzutować do kolekcji schematów XML, która różni się od kolumny typu xml w tabeli bazowej.

  • Nie można używać typu danych XML w widokach rozproszonych partycjonowanych.

  • Predykaty SQL uruchamiane względem widoku nie zostaną przesunięte do XQuery definicji widoku.

  • Metody typów danych xml w widoku nie są możliwe do zaktualizowania.