Compartir a través de


Usar enlace de conjuntos de filas (ODBC)

Se aplica a: SQL Server Azure SQL Database Azure SQL Instancia administrada Azure Synapse Analytics Analytics Platform System (PDW)

Para utilizar el enlace de modo de columna

  1. Para cada columna enlazada, haga lo siguiente:

    • Asigne una matriz de R (o más) búferes de columna para almacenar los valores de datos, donde R es el número de filas del conjunto de filas.

    • De modo opcional, asigne una matriz de R (o más) búferes de columna para almacenar las longitudes de los datos.

    • Llame a SQLBindCol para enlazar las matrices de valores de datos y de longitud de datos de columna a la columna del conjunto de filas.

  2. Llame a SQLSetStmtAttr para establecer los atributos siguientes:

    • Establezca SQL_ATTR_ROW_ARRAY_SIZE en el número de filas del conjunto de filas (R).

    • Establezca SQL_ATTR_ROW_BIND_TYPE en SQL_BIND_BY_COLUMN.

    • Establezca el atributo SQL_ATTR_ROWS FETCHED_PTR para que señale a una variable SQLUINTEGER que incluya el número de filas capturadas.

    • Establezca SQL_ATTR_ROW_STATUS_PTR para que señale a una matriz[R] de variables SQLUSSMALLINT que incluya indicadores de estado de filas.

  3. Ejecute la instrucción.

  4. Cada llamada a SQLFetch o a SQLFetchScroll recupera R filas y transfiere los datos a las columnas enlazadas.

Para utilizar el enlace de modo de fila

  1. Asigne una matriz [R] de estructuras, donde R es el número de filas del conjunto de filas. La estructura tiene un elemento para cada columna y cada elemento tiene dos partes:

    • La primera parte es una variable del tipo de datos adecuado donde almacenar los datos de columnas.

    • La segunda parte es una variable SQLINTEGER donde almacenar el indicador de estado de columnas.

  2. Llame a SQLSetStmtAttr para establecer los atributos siguientes:

    • Establezca SQL_ATTR_ROW_ARRAY_SIZE en el número de filas del conjunto de filas (R).

    • Establezca SQL_ATTR_ROW_BIND_TYPE en el tamaño de la estructura asignada en el paso 1.

    • Establezca el atributo SQL_ATTR_ROWS_FETCHED_PTR para que señale a una variable SQLUINTEGER que incluya el número de filas capturadas.

    • Establezca SQL_ATTR_PARAMS_STATUS_PTR para que señale a una matriz[R] de variables SQLUSSMALLINT que incluya indicadores de estado de filas.

  3. Para cada columna del conjunto de resultados, llame a SQLBindCol para que el valor de datos y puntero de longitud de datos de la columna señalen a sus variables en el primer elemento de la matriz de estructuras asignada en el paso 1.

  4. Ejecute la instrucción.

  5. Cada llamada a SQLFetch o a SQLFetchScroll recupera R filas y transfiere los datos a las columnas enlazadas.

Consulte también

Temas de procedimientos del uso de cursores (ODBC)
Cómo se implementan los cursores
Usar cursores (ODBC)