Указание переменных XPath в запросах XPath (SQLXML 4.0)
В следующих примерах показано, как передаются переменные в запросах XPath. В данных примерах запросы XPath определены в соответствии со схемой сопоставления, которая содержится в файле SampleSchema1.xml. Сведения об этом образце схемы см. в разделе Образец схемы XSD с заметками для примеров XPath (SQLXML 4.0).
Примеры
А. Использование переменных XPath
Образец шаблона содержит два запроса XPath. Каждый из запросов принимает один параметр. Шаблон также задает для этих параметров значения по умолчанию. Они используются, если значения не заданы. Два параметра со значениями по умолчанию задаются в разделе <sql:header>.
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <sql:header> <sql:param name='CustomerID'>1</sql:param> <sql:param name='ContactID'>1</sql:param> </sql:header> <sql:xpath-query mapping-schema="SampleSchema1.xml"> Customer[@CustomerID=$CustomerID] </sql:xpath-query > <sql:xpath-query mapping-schema="SampleSchema1.xml"> Contact[@ContactID=$ContactID] </sql:xpath-query></ROOT>
Проверка запроса XPath к схеме сопоставления
Скопируйте образец кода схемы и вставьте его в текстовый файл. Сохраните файл с именем SampleSchema1.xml.
Создайте следующий шаблон (XPathVariables.xml) и сохраните его в каталоге, где:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <sql:header> <sql:param name='CustomerID'>1</sql:param> <sql:param name='ContactID'>1</sql:param> </sql:header> <sql:xpath-query mapping-schema="SampleSchema1.xml"> Customer[@CustomerID=$CustomerID] </sql:xpath-query > <sql:xpath-query mapping-schema="SampleSchema1.xml"> Contact[@ContactID=$ContactID] </sql:xpath-query></ROOT>
Путь к каталогу схемы сопоставления (файл SampleSchema1.xml) задается относительно каталога, в котором сохранен шаблон. Можно также задать абсолютный путь, например:
mapping-schema="C:\MyDir\SampleSchema1.xml"
Создайте и запустите тестовый сценарий SQLXML 4.0 (Sqlxml4test.vbs), чтобы выполнить шаблон. Дополнительные сведения см. в разделе Использование ADO для выполнения запросов SQLXML 4.0.
![]() |
---|
В данном примере никакие параметры не передаются. Поэтому используются значения по умолчанию. |