Compartilhar via


SQLBindCol (Biblioteca de cursores)

Importante

Esse recurso será removido em uma versão futura do Windows. Evite usar esse recurso em um novo trabalho de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso. A Microsoft recomenda usar a funcionalidade de cursor do driver.

Este tópico discute o uso da função SQLBindCol na biblioteca de cursores. Para obter informações gerais sobre SQLBindCol, consulte Função SQLBindCol.

Um aplicativo aloca um ou mais buffers para que a biblioteca de cursores retorne o conjunto de linhas atual. Ele chama SQLBindCol uma ou mais vezes para associar esses buffers ao conjunto de resultados.

Um aplicativo pode chamar SQLBindCol para religar colunas do conjunto de resultados depois de chamar SQLExtendedFetch, SQLFetch ou SQLFetchScroll, desde que o tipo de dados C, o tamanho da coluna e os dígitos decimais da coluna associada permaneçam os mesmos. O aplicativo não precisa fechar o cursor para reassociar colunas a endereços diferentes.

A biblioteca de cursores dá suporte à definição do atributo de instrução SQL_ATTR_ROW_BIND_OFFSET_PTR para usar deslocamentos de associação. (O SQLBindCol não precisa ser chamado para que essa rea vinculação ocorra.) Se a biblioteca de cursores for usada com um driver ODBC 3.x , o deslocamento de associação não será usado quando SQLFetch for chamado. O deslocamento de associação será usado se SQLFetch for chamado quando a biblioteca de cursores for usada com um driver ODBC 2.x porque SQLFetch será mapeado para SQLExtendedFetch.

A biblioteca de cursores dá suporte à chamada de SQLBindCol para associar a coluna de indicador.

Ao trabalhar com um driver ODBC 2.x , a biblioteca de cursores retorna SQLSTATE HY090 (comprimento de buffer ou cadeia de caracteres inválida) quando SQLBindCol é chamado para definir o comprimento do buffer de uma coluna de indicador como um valor não igual a 4. Ao trabalhar com um driver ODBC 3.x , a biblioteca de cursores permite que o buffer seja de qualquer tamanho.