Compartilhar via


Usar associação de conjunto de linhas (ODBC)

Para usar uma associação por coluna

  1. Para cada coluna associada, siga este procedimento:

    • Aloque uma matriz de R (ou mais) buffers de coluna para armazenar valores de dados, onde R é o número de linhas no conjunto de linhas.

    • Outra opção é alocar uma matriz de R (ou mais) buffers de coluna para armazenar comprimentos de dados.

    • Chame SQLBindCol para associar o valor de dados da coluna e matrizes de comprimento de dados à coluna do conjunto de linhas.

  2. Chame SQLSetStmtAttr para definir os seguintes atributos:

    • Defina SQL_ATTR_ROW_ARRAY_SIZE como o número de linhas no conjunto de linhas (R).

    • Defina SQL_ATTR_ROW_BIND_TYPE como SQL_BIND_BY_COLUMN.

    • Defina o atributo SQL_ATTR_ROWS FETCHED_PTR de modo que aponte para uma variável SQLUINTEGER que contém o número de linhas buscadas.

    • Defina SQL_ATTR_ROW_STATUS_PTR de modo que aponte para uma matriz[R] de variáveis SQLUSSMALLINT que contém indicadores de status de linha.

  3. Executar a instrução.

  4. Cada chamada para SQLFetch ou SQLFetchScroll recupera linhas do R e transfere os dados para as colunas associadas.

Para usar uma associação por linha

  1. Aloque uma matriz[R] de estruturas, onde R é o número de linhas no conjunto de linhas. A estrutura tem um elemento para cada coluna e cada elemento tem duas partes:

    • A primeira parte é uma variável do tipo de dados apropriado que contém os dados de coluna.

    • A segunda parte é uma variável SQLINTEGER que contém o indicador de coluna.

  2. Chame SQLSetStmtAttr para definir os seguintes atributos:

    • Defina SQL_ATTR_ROW_ARRAY_SIZE como o número de linhas no conjunto de linhas (R).

    • Defina SQL_ATTR_ROW_BIND_TYPE como o tamanho da estrutura alocada na Etapa 1.

    • Defina o atributo SQL_ATTR_ROWS_FETCHED_PTR de modo que aponte para uma variável SQLUINTEGER que contém o número de linhas buscadas.

    • Defina SQL_ATTR_PARAMS_STATUS_PTR de modo que aponte para uma matriz[R] de variáveis SQLUSSMALLINT que contém indicadores de status de linha.

  3. Para cada coluna no conjunto de resultados, chame SQLBindCol para apontar o valor de dados e o ponteiro de comprimento de dados da coluna para suas variáveis no primeiro elemento da matriz de estruturas alocadas na Etapa 1.

  4. Executar a instrução.

  5. Cada chamada para SQLFetch ou SQLFetchScroll recupera linhas do R e transfere os dados para as colunas associadas.

Consulte Também

Tópicos de instruções sobre o uso de cursores (ODBC)
Como os cursores são implementados
Usar cursores (ODBC)