Создание представлений по XML-столбцам
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure
Чтобы создавать представления, можно использовать столбец типа 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 в представлении не обновлялись.