Zachowania kursora
ODBC obsługuje opcji ISO określające zachowanie kursory, określając czułości i scrollability.Te zachowania są określone przez ustawienie opcji SQL_ATTR_CURSOR_SCROLLABLE i SQL_ATTR_CURSOR_SENSITIVITY na wywołanie SQLSetStmtAttr. SQL Server Sterownik ODBC macierzystym klienta implementuje opcje te żądając kursory serwera z następujących cech.
Ustawienia zachowanie kursora |
Cechy kursor serwera wymagane |
---|---|
SQL_SCROLLABLE i SQL_SENSITIVE |
kursor zestawu kluczy o zmiennych i oparte na wersja optymistycznej współbieżność |
SQL_SCROLLABLE i SQL_INSENSITIVE |
Statyczne kursor i współbieżność tylko do odczytu |
SQL_SCROLLABLE i SQL_UNSPECIFIED |
Statyczne kursor i współbieżność tylko do odczytu |
SQL_NONSCROLLABLE i SQL_SENSITIVE |
kursor tylko do przodu i oparte na wersja optymistycznej współbieżność |
SQL_NONSCROLLABLE i SQL_INSENSITIVE |
Domyślnie zestaw wyników (tylko do przodu, tylko do odczytu) |
SQL_NONSCROLLABLE i SQL_UNSPECIFIED |
Domyślnie zestaw wyników (tylko do przodu, tylko do odczytu) |
Na podstawie wersji optymistycznej współbieżność wymaga sygnatury czasowej kolumna w tabela źródłowa.Jeśli wymagana jest oparte na wersja optymistycznego sterowania współbieżnością w tabela, która nie ma sygnatury czasowej kolumna, serwer używa wartości oparte optymistycznej współbieżność.
Scrollability
Gdy jest SQL_ATTR_CURSOR_SCROLLABLE zestaw SQL_SCROLLABLE, kursor obsługuje różne wartości dla FetchOrientation parametr SQLFetchScroll.Gdy jest SQL_ATTR_CURSOR_SCROLLABLE zestaw do SQL_NONSCROLLABLE, kursor obsługuje tylko FetchOrientation wartość SQL_FETCH_NEXT.
Czułość
Gdy jest SQL_ATTR_CURSOR_SENSITIVITY zestaw do SQL_SENSITIVE, kursor odzwierciedla zmiany danych dokonane przez bieżącego użytkownika lub przez innych użytkowników.Gdy jest SQL_ATTR_CURSOR_SENSITIVITY zestaw SQL_INSENSITIVE, kursor nie odzwierciedlają modyfikacji danych.