Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Microsoft Fabric'te SQL veritabanı
xml veri tipi değişkeni veya sütununa karşı xml Veri Tipi Yöntemleri belirtebilirsiniz. Örneğin, query() Yöntemi (xml Veri Türü) belirtilen XQuery'yi bir XML örneğine karşı çalıştırır. XML'i bu şekilde oluştururken, XML olmayan bir sütundan veya Transact-SQL değişkeninden bir değer getirmek isteyebilirsiniz. Bu süreç, XML içinde bağlama ilişkisel veri olarak adlandırılır.
XML içindeki ilişkisel olmayan verileri bağlamak için SQL Server Veritabanı Motoru aşağıdaki sözde işlevleri sağlar:
sql:column() fonksiyonu (XQuery) XQuery veya XML DML ifadenizde ilişkisel bir sütundan alınan değerleri kullanmanıza izin verir.
sql:variable() fonksiyonu (XQuery) . XQuery veya XML DML ifadenizdeki bir SQL değişkeninin değerini kullanmanızı sağlar.
Bu fonksiyonları, XML içinde ilişkisel bir değer açmak istediğinizde xml veri tipi metodlarıyla kullanabilirsiniz.
Bu fonksiyonları, xml, CLR kullanıcı tanımlı tipler, datetime, smalldatetime, metin, ntext, sql_variant ve resim türlerinin sütunlarında veya değişkenlerinde veri referansı olarak kullanamazsınız.
Ayrıca, bu cilt sadece okunabilir amaçlar içindir. Yani, bu fonksiyonları kullanan sütunlara veri yazamazsınız. Örneğin, sql:variable("@x")="bazı ifadeler" izin verilmez.
Örnek: sql:variable() kullanılarak alanlar arası sorgu
Bu örnek, sql:variable() uygulamasının bir sorguyu parametre etmesini nasıl etkinleştirebileceğini gösterir. ISBN, bir SQL değişkeni @isbnkullanılarak iletilir. Sabiti sql:variable() ile değiştirerek, sorgu sadece 0-7356-1588-2 ISBN'si olan herhangi bir ISBN'i değil, herhangi bir ISBN'yi aramak 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:column() benzer şekilde kullanılabilir ve ek avantajlar sağlar. Sütunun üzerindeki indeksler, maliyet tabanlı sorgu optimizatoru tarafından belirlendiği gibi verimlilik için kullanılabilir. Ayrıca, hesaplanan sütun yükseltilmiş bir özelliği depolayabilir.