Jak implementowane są kursory

Dotyczy:sql ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Aplikacje ODBC kontrolują zachowanie kursora, ustawiając jeden lub więcej atrybutów instrukcji przed wykonaniem instrukcji SQL. ODBC ma dwa różne sposoby określania cech kursora:

  • Typ kursora

    Typy kursorów są ustawiane za pomocą atrybutu SQL_ATTR_CURSOR_TYPE SQLSetStmtAttr. Typy kursorów ODBC to tylko forward, statyczne, sterowane zestawem klawiszy, mieszane i dynamiczne. Ustawianie typu kursora było pierwotną metodą określania kursorów w ODBC.

  • Zachowanie kursora

    Zachowanie kursora jest ustawiane przy użyciu atrybutów SQL_ATTR_CURSOR_SCROLLABLE i SQL_ATTR_CURSOR_SENSITIVITY SQLSetStmtAttr. Atrybuty te są wzorowane na słowach kluczowych SCROLL i SENSITIVE zdefiniowanych dla instrukcji DECLARE CURSOR w standardach ISO. Te dwie opcje ISO zostały wprowadzone w wersji ODBC 3.0.

Charakterystykę kursora ODBC należy określać za pomocą jednej z tych dwóch metod, z preferencją stosowania typów kursorów ODBC.

Oprócz ustawiania typu kursora, aplikacje ODBC ustawiają także inne opcje, takie jak liczba wierszy zwracanych przy każdym pobieraniu, opcje współbieżności oraz poziomy izolacji transakcji. Opcje te można ustawić zarówno dla kursorów w stylu ODBC (tylko do przodu, statyczne, sterowane zestawem klawiszy, mieszane i dynamiczne), jak i dla kursorów w stylu ISO (przewijanie i czułość).

Sterownik ODBC dla natywnego klienta SQL Server obsługuje kilka sposobów fizycznej implementacji różnych typów kursorów. Sterownik implementuje niektóre typy kursorów za pomocą domyślnego zestawu wyników SQL Server; inne implementuje jako kursory serwera lub korzystając z biblioteki kursorów ODBC.

W tej Sekcji