Usando cursores (ODBC)
ODBC dá suporte a um modelo de cursor que permite:
Vários tipos de cursor.
Recursos de rolagem e posicionamento dentro de um cursor.
Várias opções de simultaneidade.
Atualizações posicionadas.
Os aplicativos ODBC raramente declaram e abrem cursores ou usam qualquer instrução Transact-SQL relacionada com cursor. O ODBC abre automaticamente um cursor para cada conjunto de resultados retornado de uma instrução SQL. As características dos cursores são controladas por atributos de instrução definidos com SQLSetStmtAttr antes de a instrução SQL ser executada. As funções API ODBC para o processamento de conjuntos de resultados dão suporte à gama completa de funcionalidades de cursor, como buscar, rolar e posicionar atualizações.
Esta é uma comparação de como scripts Transact-SQL e aplicativos ODBC funcionam com cursores.
Ação |
Transact-SQL |
ODBC |
---|---|---|
Definir o comportamento do cursor |
Especifique por meio de parâmetros DECLARE CURSOR |
Defina atributos de cursor usando SQLSetStmtAttr |
Abrir um cursor |
DECLARE CURSOR OPEN cursor_name |
SQLExecDirect ou SQLExecute |
Buscar linhas |
FETCH |
SQLFetch ou SQLFetchScroll |
Atualização posicionada |
Cláusula WHERE CURRENT OF em UPDATE ou DELETE |
SQLSetPos |
Fechar um cursor |
CLOSE cursor_name DEALLOCATE |
Os cursores de servidor implementados no SQL Server dão suporte à funcionalidade de modelo do cursor ODBC. O driver do SQL Server Native Client usa cursores de servidor para dar suporte à funcionalidade da API ODBC.