Share via


Fechar o cursor

Quando um aplicativo termina de usar um cursor, ele chama SQLCloseCursor para fechar o cursor. Por exemplo:

SQLCloseCursor(hstmt);  

Até que o aplicativo feche o cursor, a instrução na qual o cursor é aberto não pode ser usada para a maioria das outras operações, como a execução de outra instrução SQL. Para obter uma lista completa de funções que podem ser chamadas enquanto um cursor está aberto, veja o Apêndice B: Tabelas de transição de estado ODBC.

Observação

Para fechar um cursor, um aplicativo deve chamar SQLCloseCursor, não SQLCancel.

Os cursores permanecem abertos até que sejam explicitamente fechados, exceto quando uma transação é confirmada ou revertida, caso em que algumas fontes de dados fecham o cursor. Em particular, chegar ao final do conjunto de resultados, quando SQLFetch retorna SQL_NO_DATA, não fecha um cursor. Mesmo cursores em conjuntos de resultados vazios (conjuntos de resultados criados quando uma instrução foi executada com êxito, mas que não retornaram linhas) devem ser explicitamente fechados.