Compartir a través de


Comportamientos de los cursores

ODBC admite las opciones ISO para especificar el comportamiento de los cursores especificando su capacidad de desplazamiento y sensibilidad. Estos comportamientos se especifican estableciendo las opciones SQL_ATTR_CURSOR_SCROLLABLE y SQL_ATTR_CURSOR_SENSITIVITY en una llamada a SQLSetStmtAttr. El controlador ODBC de SQL Server Native Client implementa estas opciones solicitando cursores de servidor con las siguientes características.

Valores de comportamiento de cursor

Características de cursor de servidor solicitadas

SQL_SCROLLABLE y SQL_SENSITIVE

Cursor controlado por conjunto de claves y simultaneidad optimista basada en las versiones

SQL_SCROLLABLE y SQL_INSENSITIVE

Cursor estático y simultaneidad de sólo lectura

SQL_SCROLLABLE y SQL_UNSPECIFIED

Cursor estático y simultaneidad de sólo lectura

SQL_NONSCROLLABLE y SQL_SENSITIVE

Cursor de sólo avance y simultaneidad optimista basada en las versiones

SQL_NONSCROLLABLE y SQL_INSENSITIVE

Conjunto de resultados predeterminado (sólo avance, sólo lectura)

SQL_NONSCROLLABLE y SQL_UNSPECIFIED

Conjunto de resultados predeterminado (sólo avance, sólo lectura)

La simultaneidad optimista basada en las versiones requiere una columna timestamp en la tabla subyacente. Si se solicita el control de simultaneidad optimista basado en versiones en una tabla que no tiene una columna timestamp, el servidor utiliza la simultaneidad optimista basada en valores.

Desplazamiento

Si SQL_ATTR_CURSOR_SCROLLABLE está establecido en SQL_SCROLLABLE, el cursor admite todos los diferentes valores para el parámetro FetchOrientation de SQLFetchScroll. Si SQL_ATTR_CURSOR_SCROLLABLE está establecido en SQL_NONSCROLLABLE, el cursor sólo admite un valor FetchOrientation de SQL_FETCH_NEXT.

Sensibilidad

Si SQL_ATTR_CURSOR_SENSITIVITY está establecido en SQL_SENSITIVE, el cursor refleja modificaciones de datos realizadas por el usuario actual o confirmadas por otros usuarios. Si SQL_ATTR_CURSOR_SENSITIVITY está establecido en SQL_INSENSITIVE, el cursor no refleja las modificaciones de datos.

Vea también

Conceptos