Udostępnij przez


Jak Użyj kursorów (ODBC)

Aby użyć kursory

  1. Wywołanie SQLSetStmtAttr do zestaw kursora żądane atrybuty:

    Ustawić atrybutów SQL_ATTR_CURSOR_TYPE i SQL_ATTR_CONCURRENCY (jest to preferowana opcja).

    Or

    Ustawianie atrybutów SQL_CURSOR_SCROLLABLE i SQL_CURSOR_SENSITIVITY.

  2. Wywołanie SQLSetStmtAttr ustawić rozmiar zestawu zestaw wierszy za pomocą atrybut SQL_ATTR_ROW_ARRAY_SIZE.

  3. Opcjonalnie można wywołać SQLzestawCursorName do zestaw nazwa kursora, jeśli aktualizacje zostaną wykonane przy użyciu klauzula gdzie bieżącego programu.

  4. Wykonanie instrukcja języka SQL.

  5. Opcjonalnie można wywołać SQLGetCursorName nazwy kursor, jeśli aktualizacje zostaną wykonane przy użyciu klauzula gdzie bieżącego programu i nazwa kursor nie został dostarczony z SQLSetCursorName w kroku 3.

  6. Wywołanie SQLNumResultCols Aby uzyskać numer kolumny (C) w zestawie zestaw wierszy.

    Użyj kolumna-wise powiązanie.

    - lub -

    Użyj row-wise powiązanie.

  7. Pobieranie zestawów wierszy z kursor, stosownie do potrzeb.

  8. Wywołanie SQLMoreResults do określenia, czy inny zestaw wyników jest dostępna.

    • Jeśli zwraca SQL_SUCCESS, dostępny jest inny zestaw wyników.

    • Zwraca SQL_NO_DATA, zestawy wyników nie są dostępne.

    • Jeżeli zwraca wartość SQL_SUCCESS_WITH_INFO lub wartość SQL_ERROR, call SQLGetDiagRec do określenia, czy wyjście z instrukcja wydruku lub RAISERROR jest dostępna.

    Parametry związane instrukcja są używane parametry wyjściowe lub wartości zwracanej procedura składowana, należy użyć danych dostępnych obecnie w bufory związane parametru.

    Gdy używane są parametry związane, każde wywołanie SQLExecute lub SQLExecDirect będzie wykonaniu razy s instrukcja języka SQL, gdzie s jest liczba elementów w tablicy parametrów związanego.Oznacza to, że będzie s zestawy wyniki procesu, w którym każdy zestaw wyniki obejmuje zestawy wyniki, parametry wyjściowe, a zwraca kody są zazwyczaj zwracane przez pojedynczy wykonanie instrukcja języka SQL.

    Należy zauważyć, że gdy zestaw wyników zawiera wiersze obliczeń, każdy wiersz komputerowe są dostępne jako oddzielny zestaw.Obliczenia te zestawy wyników są naprzemiennie w normalnym wierszy i podział wierszy normalnej na wiele zestawów wyników.

  9. Opcjonalnie można wywołać SQLFreeStmt z SQL_UNBIND, aby zwolnić wszystkie bufory kolumna związanej.

  10. Jeśli dostępny jest inny zestaw wyników, przejdź do kroku 6.

    W kroku 9, wywołanie SQLMoreResults na częściowo przetworzonych wyniku zestaw czyści pozostałą część zestaw wyników.Aby wyczyścić zestaw wyników częściowo przetworzone w inny sposób jest wywołanie SQLCloseCursor.

    Można kontrolować typ kursor używanego przez ustawienie SQL_ATTR_CURSOR_TYPE i SQL_ATTR_CONCURRENCY, lub SQL_ATTR_CURSOR_SENSITIVITY i SQL_ATTR_CURSOR_SCROLLABLE.Nie należy mieszać dwóch metod określania zachowania kursor.