Compartir a través de


SQLSetStmtAttr (biblioteca de cursores)

Importante

Esta característica se quitará en una versión futura de Windows. Evite usar esta característica en el nuevo trabajo de desarrollo y planee modificar las aplicaciones que actualmente usan esta característica. Microsoft recomienda usar la funcionalidad del cursor del controlador.

En este tema se describe el uso de la función SQLSetStmtAttr en la biblioteca de cursores. Para obtener información general sobre SQLSetStmtAttr, vea Función SQLSetStmtAttr.

La biblioteca de cursores admite los siguientes atributos de instrucción con SQLSetStmtAttr:

SQL_ATTR_CONCURRENCY
SQL_ATTR_CURSOR_TYPE
SQL_ATTR_FETCH_BOOKMARK_PTR
SQL_ATTR_PARAM_BIND_OFFSET_PTR
SQL_ATTR_PARAM_BIND_TYPE

SQL_ATTR_ROW_BIND_OFFSET_PTR
SQL_ATTR_ROW_BIND_TYPE
SQL_ATTR_ROWSET_ARRAY_SIZE
SQL_ATTR_SIMULATE_CURSOR
SQL_ATTR_USE_BOOKMARKS

La biblioteca de cursores solo admite los valores SQL_CURSOR_FORWARD_ONLY y SQL_CURSOR_STATIC del atributo de instrucción SQL_ATTR_CURSOR_TYPE.

En el caso de los cursores de solo avance, la biblioteca de cursores admite el valor SQL_CONCUR_READ_ONLY del atributo de instrucción SQL_ATTR_CONCURRENCY. En el caso de los cursores estáticos, la biblioteca de cursores admite los valores SQL_CONCUR_READ_ONLY y SQL_CONCUR_VALUES del atributo de instrucción SQL_ATTR_CONCURRENCY.

La biblioteca de cursores solo admite el valor SQL_SC_NON_UNIQUE del atributo de instrucción SQL_ATTR_SIMULATE_CURSOR.

Aunque la especificación ODBC admite llamadas a SQLSetStmtAttr con los atributos SQL_ATTR_PARAM_BIND_TYPE o SQL_ATTR_ROW_BIND_TYPE después de llamar a SQLFetch o SQLFetchScroll , la biblioteca de cursores no. Para poder cambiar el tipo de enlace en la biblioteca de cursores, la aplicación debe cerrar el cursor. La biblioteca de cursores admite el cambio de los atributos de instrucción SQL_ATTR_ROW_BIND_OFFSET_PTR, SQL_ATTR_PARAM_BIND_OFFSET_PTR, SQL_ATTR_ROWS_FETCHED_PTR y SQL_ATTR_PARAMS_PROCESSED_PTR cuando se abre un cursor.

Una aplicación puede llamar a SQLSetStmtAttr con un atributo de SQL_ATTR_ROW_ARRAY_SIZE para cambiar el tamaño del conjunto de filas mientras un cursor está abierto. El nuevo tamaño del conjunto de filas surtirá efecto la próxima vez que se llame a SQLFetchScroll o SQLFetch .

La biblioteca de cursores admite la configuración del atributo de instrucción SQL_ATTR_PARAM_BIND_OFFSET_PTR o SQL_ATTR_ROW_BIND_OFFSET_PTR para habilitar los desplazamientos de enlace. El desplazamiento de enlace no se usará para las llamadas a SQLFetch cuando se use la biblioteca de cursores con ODBC 2. controlador x .

La biblioteca de cursores admite la configuración del atributo de instrucción SQL_ATTR_USE_BOOKMARKS en SQL_UB_VARIABLE.