Ventajas y desventajas de los cursores
En la base de datos, el cursor es un concepto muy importante. Los cursores proporcionan un medio flexible para operar con datos recuperados de una tabla. En esencia, los cursores son en realidad un mecanismo que puede extraer un registro a la vez de un conjunto de resultados que incluye varios registros de datos. Un cursor siempre está asociado con una instrucción de selección T_SQL porque el cursor consta del conjunto de resultados (que puede ser cero, uno o varios registros recuperados por la instrucción de selección asociada) y la posición del cursor en el conjunto de resultados que apunta a un registro específico. . Cuando decide procesar un conjunto de resultados, debe declarar un cursor que apunte al conjunto de resultados. Si alguna vez ha escrito un programa en C que procesa archivos, el cursor es como el identificador de archivo que obtiene cuando abre un archivo. Siempre que el archivo se abra correctamente, el identificador de archivo representa el archivo. Para los cursores, la lógica es la misma. Se puede ver que el cursor puede procesar el conjunto de resultados de la tabla básica de una manera similar a la de un programa tradicional que lee un archivo plano, presentando así los datos de la tabla al programa en forma de un archivo plano.
Sabemos que el sistema de administración de bases de datos relacionales está esencialmente orientado a conjuntos. En MS SQL SERVER, no existe una forma de expresión para describir un solo registro en la tabla, a menos que se use una cláusula donde para limitar solo uno. registro a seleccionar. Por lo tanto, debemos utilizar cursores para realizar el procesamiento de datos de registros individuales.
Se puede ver que el cursor permite a la aplicación realizar operaciones iguales o diferentes en cada fila del conjunto de resultados devuelto por la instrucción de consulta select, en lugar de realizar la misma operación en todo el conjunto de resultados. a la vez también proporciona la capacidad de eliminar o actualizar datos en una tabla según la posición del cursor. Además, es el cursor el que conecta el sistema de gestión de bases de datos orientado a colecciones y la programación orientada a filas, lo que permite que los dos métodos de procesamiento de datos; comunicar.
La complejidad y la ineficiencia son las mayores deficiencias de los cursores. Estos dos puntos por sí solos son suficientes para que tengamos una actitud cautelosa al respecto.