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ı
Aşağıdaki örnekler, XPath sorgularında Boolean fonksiyonlarının nasıl tanımlandığını göstermektedir. Bu örneklerdeki XPath sorguları, SampleSchema1.xmliçinde bulunan eşleme şemasına göre tanımlanmıştır. Bu örnek şema hakkında bilgi için Örnek Açıklamalı XSD Şeması (XPath Örnekleri için Örnek Açıklamalı XSD Şeması'na (SQLXML 4.0) bakınız.
Örnekler
A. not() Boolean fonksiyonunu belirtin
Bu sorgu, Order> child öğeleri< olmayan bağlam düğümünün tüm <Müşteri> çocuk elemanlarını döndürür:
/child::Customer[not(child::Order)]
Alt eksen varsayılan olarak kullanılır. Bu nedenle, sorgu şu şekilde tanımlanabilir:
/Customer[not(Order)]
XPath sorgusunu eşleme şemasıyla test etmek için
Örnek şema kodunu kopyalayın ve bir metin dosyasına yapıştırın. Dosyayı SampleSchema1.xmlolarak kaydet.
Aşağıdaki şablonu (BooleanFunctionsA.xml) oluşturun ve SampleSchema1.xml kaydedildiği dizine kaydedin.
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <sql:xpath-query mapping-schema="SampleSchema1.xml"> Customer[not(Order)] </sql:xpath-query> </ROOT>Eşleme şeması (SampleSchema1.xml) için belirtilen dizin yolu, şablonun kaydedildiği dizine görecelidir. Mutlak bir yol da belirtilebilir, örneğin:
mapping-schema="C:\MyDir\SampleSchema1.xml"Şablonu çalıştırmak için SQLXML 4.0 Test Script'i (Sqlxml4test.vbs) oluşturun ve kullanın.
Daha fazla bilgi için bkz. SQLXML 4.0 Sorguları Yürütmek için ADO Kullanma.
İşte şablon yürütme işleminin kısmi sonuç kümesi:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
<Customer CustomerID="13" SalesPersonID="286" TerritoryID="7" AccountNumber="13" CustomerType="S" />
<Customer CustomerID="32" SalesPersonID="289" TerritoryID="8" AccountNumber="32" CustomerType="S" />
<Customer CustomerID="35" SalesPersonID="275" TerritoryID="2" AccountNumber="35" CustomerType="S" />
...
</ROOT>
B. true() ve false() Boolean fonksiyonlarını belirtin
Bu sorgu, Order> child öğesi olmayan bağlam düğümünün< tüm <Müşteri> öğesi çocuklarını döndürür. İlişkisel açıdan, bu sorgu sipariş vermemiş tüm müşterileri geri getirir.
/child::Customer[child::Order=false()]
Alt eksen varsayılan olarak kullanılır. Bu nedenle, sorgu şu şekilde tanımlanabilir:
/Customer[Order=false()]
Bu sorgu aşağıdakine eşdeğerdir:
/Customer[not(Order)]
Aşağıdaki sorgu, en az bir sipariş vermiş tüm müşterileri geri getirir:
/Customer[Order=true()]
Bu sorgu şu sorguya eşdeğerdir:
/Customer[Order]
XPath sorgusunu eşleme şemasıyla test etmek için
Örnek şema kodunu kopyalayın ve bir metin dosyasına yapıştırın. Dosyayı SampleSchema1.xmlolarak kaydet.
Aşağıdaki şablonu (BooleanFunctionsB.xml) oluşturun ve SampleSchema1.xml kaydedildiği dizine kaydedin.
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <sql:xpath-query mapping-schema="SampleSchema1.xml"> /Customer[Order=false()] </sql:xpath-query> </ROOT>Eşleme şeması (SampleSchema1.xml) için belirtilen dizin yolu, şablonun kaydedildiği dizine görecelidir. Mutlak bir yol da belirtilebilir, örneğin:
mapping-schema="C:\MyDir\SampleSchema1.xml"Şablonu çalıştırmak için SQLXML 4.0 Test Script'i (Sqlxml4test.vbs) oluşturun ve kullanın.
Daha fazla bilgi için bkz. SQLXML 4.0 Sorguları Yürütmek için ADO Kullanma.
İşte şablon yürütme işleminin kısmi sonuç kümesi:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
<Customer CustomerID="13" SalesPersonID="286" TerritoryID="7" AccountNumber="13" CustomerType="S" />
<Customer CustomerID="32" SalesPersonID="289" TerritoryID="8" AccountNumber="32" CustomerType="S" />
<Customer CustomerID="35" SalesPersonID="275" TerritoryID="2" AccountNumber="35" CustomerType="S" />
...
</ROOT>