Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Database
Följande exempel visar hur booleska operatorer specificeras i XPath-frågor. XPath-frågan i detta exempel är specificerad mot mappningsschemat som finns i SampleSchema1.xml. För information om detta exempelschema, se Exempel annoterat XSD-schema för XPath-exempel (SQLXML 4.0).
Examples
A. Specificera OR Boolean-operatorn
Denna XPath-fråga returnerar <kundelementbarnen> till kontextnoden med attributvärdet CustomerID 13 eller 31:
/child::Customer[attribute::CustomerID="13" or attribute::CustomerID="31"]
En genväg till attributaxeln (@) kan specificeras, och eftersom barnaxeln är standard kan den utelämnas:
/Customer[@CustomerID="13" or @CustomerID="31"]
I predikatet attribute är axeln och CustomerID är nodtestet (SANT om CustomerID är en <attributnod> , eftersom <attributnoden> är den primära noden för attributaxeln ). Predikatet filtrerar <kundelementen> och returnerar endast de som uppfyller villkoret som anges i predikatet.
För att testa XPath-frågorna mot mappningsschemat
Kopiera exempelschemakoden och klistra in den i en textfil. Spara filen som SampleSchema1.xml.
Skapa följande mall (BooleanOperatorsA.xml) och spara den i katalogen där SampleSchema1.xml sparas.
<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>Den katalogväg som anges för mappningsschemat (SampleSchema1.xml) är relativ till katalogen där mallen sparas. En absolut väg kan också specificeras, till exempel:
mapping-schema="C:\MyDir\SampleSchema1.xml"Skapa och använd SQLXML 4.0 Test Script (Sqlxml4test.vbs) för att köra mallen.
Mer information finns i Använda ADO för att köra SQLXML 4.0-frågor.
Här är resultatuppsättningen för mallexekveringen:
<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="2003-08-01T00:00:00" DueDate="2003-08-13T00:00:00" ShipDate="2003-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="2004-05-01T00:00:00" DueDate="2004-05-13T00:00:00" ShipDate="2004-05-08T00:00:00">
<OrderDetail ProductID="Prod-835" UnitPrice="440.1742" OrderQty="1" UnitPriceDiscount="0" />
</Order>
</Customer>
</ROOT>