Usar cursores em bloco
O suporte para cursores de bloco é integrado ao ODBC 3.x. SQLFetch só pode ser usado para recuperações de várias linhas quando chamado no ODBC 3.x; se um aplicativo ODBC 2.x chamar SQLFetch, ele abrirá apenas um cursor de linha única e somente de avanço. Quando um aplicativo ODBC 3.x chama SQLFetch em um driver ODBC 2.x, ele retorna uma só linha, a menos que o driver dê suporte a SQLExtendedFetch. Para obter mais informações, confira Cursores de Bloco, Cursores Roláveis e Compatibilidade com Versões Anteriores no Apêndice G: Diretrizes de driver para compatibilidade com versões anteriores.
Para usar cursores de bloco, o aplicativo define o tamanho do conjunto de linhas, associa os buffers de conjunto de linhas (conforme descrito na seção anterior), opcionalmente define os atributos de instrução SQL_ATTR_ROWS_FETCHED_PTR e SQL_ATTR_ROW_STATUS_PTR e chama SQLFetch ou SQLFetchScroll para buscar um bloco de linhas. O aplicativo pode alterar o tamanho do conjunto de linhas e associar novos buffers de conjunto de linhas (chamando SQLBindCol ou especificando um deslocamento de associação) mesmo após as linhas terem sido buscadas.
Esta seção contém os tópicos a seguir.