Использование курсоров (ODBC)
ODBC поддерживает модель курсора, которая позволяет следующее.
Несколько типов курсоров.
Прокрутку и позиционирование в курсоре.
Несколько параметров параллелизма.
Позиционированные обновления.
Приложения ODBC редко декларируют и открывают курсоры или используют любые связанные с курсорами инструкции Transact-SQL. ODBC автоматически открывает курсор для каждого возвращенного результирующего набора из инструкции SQL. Характеристики курсоров управляются атрибутами инструкции, которые устанавливаются при помощи функции SQLSetStmtAttr перед выполнением инструкции SQL. Функции API ODBC для обработки результирующих наборов поддерживают полный набор функций работы с курсором, включая выборку, прокрутку и позиционированные обновления.
Далее приведено сравнение работы с курсорами в сценариях Transact-SQL и приложениях ODBC.
Действие |
Transact-SQL |
Интерфейс ODBC |
---|---|---|
Определение режима работы курсоров |
Указание через параметры DECLARE CURSOR |
Установка атрибутов курсора с помощью инструкции SQLSetStmtAttr |
Открытие курсора |
DECLARE CURSOR OPEN имя_курсора |
SQLExecDirect или SQLExecute |
Выборка строк |
FETCH |
SQLFetch или SQLFetchScroll |
Позиционированное обновление |
Предложение WHERE CURRENT OF для инструкции UPDATE или DELETE. |
Функция SQLSetPos |
Закрытие курсора |
CLOSE имя_курсора DEALLOCATE |
Серверные курсоры, реализованные в SQL Server, поддерживают функции модели курсора ODBC. Драйвер для собственного клиента SQL Server использует серверные курсоры для поддержки функций работы с курсорами API ODBC.
В этом разделе