Способы реализации курсоров
Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)
Приложения ODBC управляют поведением курсора, задав один или несколько атрибутов инструкции перед выполнением инструкции SQL. ODBC может указывать характеристики курсора двумя разными способами.
Тип курсора
Типы курсоров задаются с помощью атрибута SQL_ATTR_CURSOR_TYPE SQLSetStmtAttr. Типы курсора ODBC бывают с последовательным доступом, статические, управляемые набором ключей, смешанные и динамические. Изначально метод указания курсоров в ODBC заключался в задании типа курсора.
Режим работы курсоров
Поведение курсора задается с помощью SQL_ATTR_CURSOR_SCROLLABLE и SQL_ATTR_CURSOR_SENSITIVITY атрибутов SQLSetStmtAttr. Эти атрибуты смоделированы на ключевых словах SCROLL и SENSITIVE, которые в стандартах ISO определены для инструкции DECLARE CURSOR. Два этих параметра ISO появились в ODBC версии 3.0.
Характеристики курсора ODBC следует указывать с помощью одного из этих методов; при этом предпочтительнее использовать типы курсоров ODBC.
Помимо установки типа курсора приложения ODBC также задают и другие параметры, например число строк, возвращаемое при каждом извлечении, параметры параллелизма, а также уровни изоляции транзакции. Эти параметры можно задавать для курсоров в стиле ODBC (с последовательным доступом, статических, управляемых набором ключей, смешанных и динамических) или курсоров в стиле ISO (прокручиваемость и чувствительность).
Драйвер ODBC собственного клиента SQL Server поддерживает несколько способов физической реализации различных типов курсоров. Драйвер реализует некоторые типы курсоров с помощью результирующий набор SQL Server по умолчанию; он реализует другие серверные курсоры или с помощью библиотеки курсоров ODBC.