Hesaplanan sütunlar içinde XML kullanma
XML örnekleri, hesaplanan bir sütun için bir kaynak veya hesaplanan sütun türü olarak görünebilir.Bu konuda örnekler hesaplanmış sütunları içeren XML nasıl kullanılır.
Oluşturma, sütunlar'dan XML sütunlar Hesaplandı
Aşağıdaki CREATE TABLE deyim, bir xml sütun () yazın.col2) tarafından hesaplanan col1:
CREATE TABLE T(col1 varchar(max), col2 AS CAST(col1 AS xml) )
The xml data type can also appear as a kaynak in creating a hesaplanan sütun, as shown in the following CREATE TABLE deyim:
CREATE TABLE T (col1 xml, col2 as cast(col1 as varchar(1000) ))
hesaplanan sütun arasında bir değer ayıklanırken tarafından oluşturabilirsiniz bir xml sütun, aşağıdaki örnekte gösterildiği gibi yazın. Çünkü xml doğrudan hesaplanan sütunlar oluşturma, veri türü yöntemleri kullanılamaz, örnek bir işlev (ilk tanımlarmy_udf), XML örneği bir değeri döndürür. Işlev sarar value() yöntem xml TYPE. Işlev adından sonra belirtilen CREATE TABLE hesaplanan sütun için deyim.
CREATE FUNCTION my_udf(@var xml) returns int
AS BEGIN
RETURN @var.value('(/ProductDescription/@ProductModelID)[1]' , 'int')
END
GO
-- Use the function in CREATE TABLE.
CREATE TABLE T (col1 xml, col2 as dbo.my_udf(col1) )
GO
-- Try adding a row.
INSERT INTO T values('<ProductDescription ProductModelID="1" />')
GO
-- Verify results.
SELECT col2, col1
FROM T
Önceki örnekte olduğu gibi aþaðýdaki örnek, geri dönmek için bir işlev tanýmlar bir xml Hesaplanan bir sütun için örnek yazın. Işlevin içine query() yöntem xml veri türü arasında bir değer alır bir xml parametre yazın.
CREATE FUNCTION my_udf(@var xml)
RETURNS xml AS
BEGIN
RETURN @var.query('ProductDescription/Features')
END
Aşağıdaki CREATE TABLE Ekstresi Col2 XML verileri (kullanan bir hesaplanan sütun<Features> öğe) işlev tarafından döndürülen:
CREATE TABLE T (Col1 xml, Col2 as dbo.my_udf(Col1) )
-- Insert a row in table T.
INSERT INTO T VALUES('
<ProductDescription ProductModelID="1" >
<Features>
<Feature1>description</Feature1>
<Feature2>description</Feature2>
</Features>
</ProductDescription>')
-- Verify the results.
SELECT *
FROM T
Bu Bölümde
Konu |
Açıklama |
---|---|
Özellik yükseltme hesaplanan sütunlar ve özellik tabloları ile nasıl kullanılacağı açıklanır. |