Partilhar via


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

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics Analytics Platform System (PDW)

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 as 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.

Confira também

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