prefacio
Hoy voy a analizar el uso de los desencadenantes, aunque generalmente no se recomienda usarlos en proyectos, pero aún necesitamos entender su uso.
Mensaje de texto
Uso de desencadenantes. Prepara la mesa que quieres usar hoy. Crea una tabla NewTest y una tabla NewTest_log
#Desencadenantes
Es un procedimiento especial almacenado, no llamado por sí mismo, sino que se toca automáticamente al realizar una operación concreta, como un evento. Uso: Monitorizar acciones y complementar las restricciones. En la introducción se menciona que generalmente no se recomiendan los disparadores para el rendimiento y el mantenimiento. En proyectos reales, generalmente no es fácil detectar el desencadenante, lo que puede traer ciertas dificultades al mantenimiento posterior.
Todas nuestras operaciones sobre los datos de la tabla se almacenan temporalmente en estas dos tablas,"insertado”,“eliminado”。 Podemos usar estas dos tablas temporales para registrar algunos datos, o para restringir y modificar el negocio.
Vamos a crear un disparador para la tabla NewTest:
Después de crear este disparador, borremos los datos de la tabla "eliminar de ADB... NewTest", y luego consulta "select * de ADB.. NewTestSe comprobó que los datos de esta tabla no se habían eliminado. Es por el disparador que creamos que cuando se eliminan los datos de la tabla, se activa la declaración de añadir nuevos datos. Podemos usar desencadenantes para monitorizar cambios en los datos de las tablas y registrar registros relevantes.
Crea un disparador para la tabla NewTest y, una vez que se añaden nuevos datos, registramos esos datos en la tabla de logarítalos correspondiente:
Ejecutar nuevas sentencias"INSERTAR [dbo]. [NewTest] ( [Nombre], [Edad], [Género], [Cantidad]) VALORES (N'Xiaohuang', 18, N'm', 20)Estaremos enNewTest_log"La tabla también genera un registro que registra la hora de la operación, el tipo de operación y la persona de aterrizaje, etc.
Entonces, ¿cómo juzgamos en el trigger que los datos han sido eliminados, modificados y añadidos a la operación? Todavía tengo que revisar las dos tablas temporales "insertadas" y "eliminadas"
Nueva operación: Hay datos en la tabla insertada, pero no hay datos en la tabla eliminada. Operación de borrado: No hay datos en la tabla insertada, y sí hay datos en la tabla eliminada. Modificar la operación: Hay datos en la tabla insertada (datos nuevos) y hay datos en la tabla eliminada (datos antiguos).
Podemos usar los datos de estas dos tablas temporales para juzgar las operaciones correspondientes y luego ejecutar nuestras operaciones empresariales correspondientes
Epílogo
Cariños, la base de datos ha llegado a su fin, y la siguiente parte registrará cómo restaurar los datos tras haber sido eliminados y modificados por error.
|