Из-за медленного доступа к источнику данных, выполнение нескольких последовательных dsexec может занять много времени. Чтобы выполнить все нужные запросы за один вызов, предусмотрен режим пакетного выполнения запросов.
Функция htDsExec предназначена для выполнения нескольких запросов во внешнем источнике данных, результаты которых могут быть выборочно сохранены в виде таблиц на сервере.
На выполнение последовательности запросов влияет параметр BreakBatchOnError, который может либо прервать выполнение последовательности запросов при возникновении ошибок, либо проигнорировать возникшие ошибки при выполнении последовательности запросов.
Значение параметра BreakBatchOnError устанавливается функцией htParameter.
Формат:
rc = htDsExec( datasrc, arg1 [, arg2]... );
Аргументы:
Аргумент
Тип
Значение
datasrc
character
Задает имя внешнего источника данных. Источник данных с указанным именем должен быть создан оператором create datasource.
arg
character
Аргумент задает строку с запросом, который надо выполнить во внешнем источнике данных. Синтаксис этого запроса должен соответствовать драйверу, используемому для доступа к источнику данных. Обычно доступ осуществляется с использованием ODBC. Если аргумент начинается с символа >, то это означает, что результаты выполнения запроса, заданного предыдущим аргументом, надо выгрузить в таблицу, имя которой идет после символа >. Таблица будет построена, если во внешнем источнике данных выполнялся оператор select. Таблица может быть как постоянной, так и временной. Чтобы задать создание глобальной временной таблицы, перед именем таблицы должен идти один символ *. Чтобы задать создание локальной временной таблицы, перед именем таблицы должны идти два символа **.
Результат:
Тип
Значение
integer
Код ошибки или 0, если операция завершилась успешно.