Aracılığıyla paylaş


xml verilerini içine ilişkisel veri bağlama

Belirtebileceğiniz XML veri türü yöntemleri karşı bir xml veri türü, değişken veya sütun.Örneğin, Query() yöntemi (xml veri türü) bir xml örnekkarşı XQuery belirtilen yürütür.Bu şekilde xml yapısı oluştururken olmayan xml türü sütun ya da Transact -SQL değişken değeri getirmek isteyebilirsiniz.Bu işlem için xml içinde ilişkisel veri bağlama olarak adlandırılmıştır.

xml içinde olmayan xml ilişkisel veri bağlamak için SQL Server veritabanı altyapısı aşağıdaki pseudo-functions sağlar:

Bu işlevler ile kullanabileceğiniz xml veri türü yöntemleri her ilişkisel değer xml içinde göstermek istediğiniz

Bu işlevler, veri sütunları veya değişkenleri ile başvurmak için kullanamazsınız xml, clr kullanıcı tanımlı türler, datetime, smalldatetime, text, ntext, sql_variant, ve image türleri.

Ayrıca, bu bağlama salt okunur amaçlıdır.Diğer bir deyişle, bu işlevleri sütun veri yazamaz.Örneğin, sql:variable("@x") = "bazı ifade" izin verilmez.

Örnek: Çapraz -etki alanı sql:variable() sorgu kullanma

Bu örnek gösterir nasıl sql:variable() sorgu stratejisinin uygulamaya etkinleştirebilirsiniz.ISBN, bir SQL değişken @ isbn kullanarak içinde iletilir.sabit ile değiştirerek sql:variable(), sorgu herhangi ISBN ve yalnızca, ISBN 0-7356-1588-2 olan bir arama için kullanılabilir.

DECLARE @isbn varchar(20)
SET     @isbn = '0-7356-1588-2'
SELECT  xCol
FROM    T
WHERE   xCol.exist ('/book/@ISBN[. = sql:variable("@isbn")]') = 1

SQL:sütun() benzer şekilde kullanılabilir ve ek yararlar sağlar.Dizinler sütun üzerinde verimlilik için maliyet tabanlı sorgu iyileştiricisitarafından karar olarak kullanılmış olabilir.Ayrıca, hesaplanmış bir sütun yükseltilen özellikdepolayabilir.

Ayrıca bkz.

Kavramlar

Diğer Kaynaklar