Apéndice F: Biblioteca de cursores ODBC
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.
La biblioteca de cursores ODBC (Odbccr32.dll) admite cursores desplazables de bloque para cualquier controlador que cumpla con el nivel de conformidad de la API de nivel 1 y los desarrolladores puedan redistribuirlos con sus aplicaciones o controladores. La biblioteca de cursores también admite instrucciones update y delete posicionadas para los conjuntos de resultados generados por instrucciones SELECT . Aunque solo admite cursores estáticos y de solo avance, la biblioteca de cursores satisface las necesidades de muchas aplicaciones. Además, puede proporcionar un buen rendimiento, especialmente para conjuntos de resultados de tamaño pequeño a mediano y para aplicaciones que no tienen buena compatibilidad con cursores.
La biblioteca de cursores es una biblioteca de vínculos dinámicos (DLL) que reside entre el Administrador de controladores y el controlador. Cuando una aplicación llama a una función, el Administrador de controladores llama a la función en la biblioteca de cursores, que ejecuta la función o la llama en el controlador especificado. Para una conexión determinada, una aplicación especifica si la biblioteca de cursores siempre se usa, se usa si el controlador no admite cursores desplazables o nunca se usa.
La biblioteca de cursores aparece como un controlador para el Administrador de controladores. Si la biblioteca de cursores reside entre el Administrador de controladores y un controlador ODBC 2.x , la biblioteca de cursores aparece como un controlador ODBC 2.x . Si la biblioteca de cursores reside entre el Administrador de controladores y un controlador ODBC 3.x , la biblioteca de cursores aparece como un controlador ODBC 3.x . El comportamiento expuesto por la biblioteca de cursores depende de la versión del controlador con la que está trabajando, a excepción de los desplazamientos de enlace, que se admiten para los controladores ODBC 2.x y ODBC 3.x .
Para implementar cursores de bloque en SQLFetch y SQLFetchScroll, la biblioteca de cursores llama repetidamente a SQLFetch en el controlador. Para implementar el desplazamiento, almacena en caché los datos que ha recuperado en memoria y en archivos de disco. Cuando una aplicación solicita un nuevo conjunto de filas, la biblioteca de cursores la recupera según sea necesario del controlador o de la memoria caché.
Para implementar instrucciones update y delete posicionadas, la biblioteca de cursores construye una instrucción UPDATE o DELETE con una cláusula WHERE que especifica el valor almacenado en caché de cada columna enlazada de la fila. Cuando ejecuta una instrucción update posicionada, la biblioteca de cursores actualiza su caché de los valores de los búferes del conjunto de filas.
Para obtener más información sobre la biblioteca de cursores ODBC, consulte las secciones siguientes de este apéndice: