Aracılığıyla paylaş


XPath sorguları (SQLxml 4.0) Boole işleçleri belirtme

Nasıl Boole işleçleri aşağıdaki örnekte gösterilmektedir XPath sorguları belirtilir.Bu örnekte XPath sorgusu SampleSchema1.xml içinde yer alan eşleme şema karşı belirtilir.Bu örnek şeması hakkında daha fazla bilgi için bkz: Örnek XPath örnekleri (SQLxml 4.0) xsd şema açıklamalı.

Örnekler

A.or belirtinBoole işleç

Bu XPath sorgusu verir <Müşteri> ile içerik düðümünün alt öğesi CustomerID öznitelik değeri 13 veya 31:

/child::Customer[attribute::CustomerID="13" or attribute::CustomerID="31"]

Kısayol attribute eksen (@) belirtilebilir ve çünkü child eksen varsayılan değerdir, gözardı:

/Customer[@CustomerID="13" or @CustomerID="31"]

İfadede, attribute olan eksen ve CustomerID düğüm sınama (true if CustomerID olan bir <öznitelik> düğümü, çünkü <öznitelik> olduğu için birincil düğüm düğüm attribute eksen).Doðrulama filtreleri <Müşteri> öğeleri ve döndürür yalnızca koşulu karşılayan belirtilen yüklemi.

XPath sorguları eşleme şema karşı sınamak için

  1. Copy örnek şema kodu ve bir metin dosyasına yapıştırın.Dosyayı SampleSchema1.xml kaydedin.

  2. Aşağıdaki şablon (BooleanOperatorsA.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[@CustomerID="13" or @CustomerID="31"]
      </sql:xpath-query>
    </ROOT>
    

    Dizin yol (SampleSchema1.xml) eşleme şema şablonun kaydedileceği dizini ile ilişkili olduğu için belirtilen.Mutlak bir yol da, örneğin belirtilebilir:

    mapping-schema="C:\MyDir\SampleSchema1.xml"
    
  3. Oluşturun ve sqlxml 4.0 sınama komut dosyası (Sqlxml4test.vbs) şablonu yürütmek için kullanın.

    Daha fazla bilgi için bkz: ado SQLxml yürütme kullanarak 4.0 sorgular.

Şablon yürütme sonuç küme aşağıdadır:

<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
  <Customer CustomerID="13" SalesPersonID="286" TerritoryID="7" AccountNumber="13" CustomerType="S" /> 
  <Customer CustomerID="31" SalesPersonID="286" TerritoryID="7" AccountNumber="31" CustomerType="S" Orders="Ord-51803 Ord-69427">
    <Order SalesOrderID="Ord-51803" SalesPersonID="286" OrderDate="2007-08-01T00:00:00" DueDate="2007-08-13T00:00:00" ShipDate="2007-08-08T00:00:00">
      <OrderDetail ProductID="Prod-718" UnitPrice="1059.31" OrderQty="1" UnitPriceDiscount="0" /> 
      <OrderDetail ProductID="Prod-838" UnitPrice="1059.31" OrderQty="1" UnitPriceDiscount="0" /> 
    </Order>
    <Order SalesOrderID="Ord-69427" SalesPersonID="286" OrderDate="2008-05-01T00:00:00" DueDate="2008-05-13T00:00:00" ShipDate="2008-05-08T00:00:00">
      <OrderDetail ProductID="Prod-835" UnitPrice="440.1742" OrderQty="1" UnitPriceDiscount="0" /> 
    </Order>
  </Customer>
</ROOT>