Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Database
Het volgende voorbeeld laat zien hoe Booleaanse operatoren worden gespecificeerd in XPath-vragen. De XPath-query in dit voorbeeld is gespecificeerd tegen het mappingschema dat in SampleSchema1.xmlis opgenomen. Voor informatie over dit voorbeeldschema, zie Voorbeeld Geannoteerd XSD-schema voor XPath-voorbeelden (SQLXML 4.0).
Voorbeelden
Eén. Specificeer de OR Booleaanse operator
Deze XPath-query geeft de kinderen van het <Klant-element> van de contextknoop terug met de CustomerID-attribuutwaarde van 13 of 31:
/child::Customer[attribute::CustomerID="13" or attribute::CustomerID="31"]
Een snelkoppeling naar de attribuutas (@) kan worden gespecificeerd, en omdat de kindas de standaard is, kan deze worden weggelaten:
/Customer[@CustomerID="13" or @CustomerID="31"]
In het predicaat attribute is de as en CustomerID is de knooptest (WAAR als CustomerID een <attribuutknoop> is, omdat de <attribuutknoop> de primaire knoop is voor de attribuutas ). Het predicaat filtert de <Customer-elementen> en geeft alleen die elementen terug die voldoen aan de voorwaarde die in het predicaat is gespecificeerd.
Om de XPath-queries te testen tegen het mappingschema
Kopieer de voorbeeldschemacode en plak deze in een tekstbestand. Sla het bestand op als SampleSchema1.xml.
Maak de volgende template aan (BooleanOperatorsA.xml) en sla deze op in de map waar SampleSchema1.xml is opgeslagen.
<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>Het directorypad dat voor het mappingschema (SampleSchema1.xml) is gespecificeerd is relatief tot de map waar het sjabloon wordt opgeslagen. Een absoluut pad kan ook worden gespecificeerd, bijvoorbeeld:
mapping-schema="C:\MyDir\SampleSchema1.xml"Maak het SQLXML 4.0 Test Script (Sqlxml4test.vbs) aan en gebruik het om het sjabloon uit te voeren.
Zie ADO gebruiken om SQLXML 4.0-query's uit te voeren voor meer informatie.
Hier is de resultaatset van de template-uitvoering:
<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>