Rolar e buscar linhas (ODBC)

Ao usar um cursor rolável, os aplicativos chamam SQLFetchScroll para posicionar o cursor e buscar linhas. SQLFetchScroll dá suporte à rolagem relativa (linhas n próximas, anteriores e relativas), rolagem absoluta (primeiro, último e linha n) e posicionamento por indicador. Os argumentos FetchOrientation e FetchOffset em SQLFetchScroll especificam qual conjuntos de linhas buscar, conforme mostrado nos diagramas a seguir.

Buscando os conjuntos de linhas próximo, anterior, primeiro e último

Buscando os conjuntos de linhas próximo, anterior, primeiro e último

Buscando um conjunto de linhas absoluto, relativo e indicado

Buscando conjuntos de linhas absolutos, relativos e indicadores

SQLFetchScroll posiciona o cursor para a linha especificada e retorna as linhas no conjuntos de linhas começando com essa linha. Se o conjunto de linhas especificado se sobrepor ao final do conjunto de resultados, um conjunto de linhas parcial será retornado. Se o conjunto de linhas especificado se sobrepor ao início do conjunto de resultados, o primeiro conjunto de linhas no conjunto de resultados geralmente será retornado; Para obter detalhes completos, consulte a descrição da função SQLFetchScroll.

Em alguns casos, o aplicativo pode querer posicionar o cursor sem recuperar dados. Por exemplo, ele pode querer testar se uma linha existe ou apenas obter o indicador para a linha sem trazer outros dados pela rede. Para fazer isso, ele define o atributo SQL_ATTR_RETRIEVE_DATA instrução SQL_RD_OFF. A variável vinculada à coluna de indicador (se alguma) sempre é atualizada, independentemente da configuração desse atributo de instrução.

Depois que o conjuntos de linhas tiver sido recuperado, o aplicativo poderá chamar SQLSetPos para posicionar para uma linha específica no conjuntos de linhas ou atualizar linhas no conjuntos de linhas. Para obter mais informações sobre como usar SQLSetPos, consulte Atualizando dados com SQLSetPos.

Observação

Há suporte para rolagem no ODBC 2. drivers x por SQLExtendedFetch. Para obter mais informações, consulte Cursores de bloco, cursoresroláveis e compatibilidade com backward no Apêndice G: Diretrizes de driver para compatibilidade com compatibilidade com backward.