Desencadenantes vs cursores
En una base de datos, un desencadenante es un procedimiento (segmento de código) que se ejecuta automáticamente cuando se producen algunos eventos específicos en una tabla/vista. Entre sus otros usos, los disparadores se utilizan principalmente para mantener la integridad en una base de datos. Un cursor es una estructura de control utilizada en bases de datos para revisar los registros de la base de datos. Es muy similar al iterador proporcionado por muchos lenguajes de programación.
¿Qué son los desencadenantes??
Un desencadenante es un procedimiento (segmento de código) que se ejecuta automáticamente cuando se producen algunos eventos específicos en una tabla/vista de una base de datos. Entre sus otros usos, los disparadores se utilizan principalmente para mantener la integridad en una base de datos. Los desencadenantes también se utilizan para hacer cumplir las reglas comerciales, auditar cambios en la base de datos y replicar datos. Los desencadenantes más comunes son los desencadenantes del lenguaje de manipulación de datos (DML) que se activan cuando se manipulan los datos. Algunos sistemas de bases de datos admiten desencadenantes no de datos, que se activan cuando ocurren eventos de lenguaje de definición de datos (DDL). Algunos ejemplos son disparadores que se disparan cuando se crean tablas, durante las operaciones de confirmación o reversión, etc. Estos desencadenantes se pueden usar especialmente para auditar. El sistema de base de datos Oracle admite desencadenantes de nivel de esquema (i.mi. Los disparadores disparados cuando se modifican los esquemas de la base de datos) como después de la creación, antes de alter, después de alter, antes de la caída, después de la caída, etc. Los cuatro tipos principales de desencadenantes compatibles con Oracle son desencadenantes de nivel de fila, desencadenantes de nivel de columna, cada tipo de fila desencadenantes y para cada tipo de declaración desencadenantes.
¿Qué son los cursores??
Un cursor es una estructura de control utilizada en bases de datos para revisar los registros de la base de datos. Es muy similar al iterador proporcionado por muchos lenguajes de programación. Además de atravesar registros en una base de datos, los cursores también facilitan la recuperación de datos, agregando y eliminando registros. Al definir la forma correcta, los cursores también se pueden usar para atravesar hacia atrás. Cuando una consulta SQL devuelve un conjunto de filas, esas se procesan realmente utilizando cursores. Un cursor debe ser declarado y asignado un nombre, antes de que pueda usarse. Entonces el cursor debe abrirse utilizando el comando abierto. Esta operación colocaría el cursor justo antes de la primera fila del conjunto de registros de resultados. Luego, el cursor tiene que realizar la operación de búsqueda para obtener una fila de datos en la aplicación. Finalmente, el cursor debe cerrarse utilizando la operación cerrada. Los cursores cerrados se pueden abrir nuevamente.
¿Cuál es la diferencia entre disparadores y cursores??
Un desencadenante es un procedimiento (segmento de código) que se ejecuta automáticamente cuando se producen algunos eventos específicos en una tabla/vista de una base de datos, mientras que un cursor es una estructura de control utilizada en bases de datos para revisar los registros de la base de datos. Se puede declarar y utilizar un cursor dentro de un gatillo. En tal situación, la declaración de declaraciones estaría dentro del gatillo. Entonces el alcance del cursor se limitaría a ese gatillo. Dentro de un gatillo, si se declara un cursor en una tabla insertada o eliminada, dicho cursor no sería accesible a partir de un disparador anidado. Una vez que se completa un disparador, todos los cursores creados dentro del disparador se desactivarán.