Ваше приложение может запросить асинхронную обработку для четырех функций, которые посылают запросы к источнику данных и извлекают данные: SQLEXEC(), SQLMORERESULTS(), SQLTABLES() и SQLCOLUMNS(). Вы можете разрешить асинхронную обработку установкой свойства соединения Asynchronous с помощью функции SQLSETPROP(). Когда для соединения установлена асинхронная связь, все эти четыре функции работают в асинхронном режиме.
Для проверки установки свойства Asynchronous
-
Для просмотра значения свойства Asynchronous используйте функцию SQLGETPROP(). В приведенном ниже примере
nConnectionHandle
представляет собой номер дескриптора вашего активного соединения:Скопировать код
? SQLGETPROP(nConnectionHandle,'Asynchronous')
Чтобы разрешить асинхронную обработку
-
Используйте функцию SQLSETPROP() для указания значения свойства Asynchronous:
Скопировать код
? SQLSETPROP(nConnectionHandle,'Asynchronous', .T.)
В асинхронном режиме вы должны вызывать каждую функцию повторно, до тех пор, пока она не возвратит значение отличное от 0 (0 - означает что исполнение не завершено). Пока функция исполняется, вы можете прекратить обработку нажатием клавиши ESC в случае, если свойство SET ESCAPE установлено в true (.T.).
Пока функция не завершит обработку, приложение может использовать дескриптор соединения только с функцией SQLCANCEL() или с асинхронными фуекциями — SQLEXEC(), SQLMORERESULTS(), SQLTABLES() или SQLCOLUMNS() — изначально связнными с дескриптором. Вы не можете вызывать любую из трех других асинхронных функций или SQLDISCONNECT() и одним и тем же дескриптором соединения, до тех пор, пока вызов функции не завершится.
Смотрите также
Концепции
Выборка эффективного режима обработки SQL Pass-ThroughОбработка множественных наборов результатов
Работа с удаленными данными с использованием SQL Pass-Through
Прочие ресурсы
Расширение приложений с помощью технологииSQL Pass-ThroughПланирование клиент-серверных приложений
Перенос (Upsizing) баз данных Visual FoxPro
Создание представлений