Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

como usar los triggers

Estas en el tema de como usar los triggers en el foro de Bases de Datos General en Foros del Web. quiero empezar a utilizar triggers en mi base de datos sqlserver, pero sólo entiendo el concepto en sí del trigger. dónde puedo encontrar ejemplos pràcticos ...
  #1 (permalink)  
Antiguo 09/10/2003, 07:11
 
Fecha de Ingreso: agosto-2002
Ubicación: Lleida
Mensajes: 506
Antigüedad: 21 años, 8 meses
Puntos: 0
como usar los triggers

quiero empezar a utilizar triggers en mi base de datos sqlserver, pero sólo entiendo el concepto en sí del trigger.
dónde puedo encontrar ejemplos pràcticos de uso del procedimiento almacenado?

el objectivo que pretendo es:
1.- actualizar cada vez que se realiza una actualización de registros grabar en un campo la fecha y hora que se ha realizado
2.- generar un diario de incidencias automatico. -dialer-

gracias
  #2 (permalink)  
Antiguo 24/06/2011, 09:28
 
Fecha de Ingreso: junio-2011
Ubicación: chile
Mensajes: 5
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: como usar los triggers

procedures y triggers son distintos
  #3 (permalink)  
Antiguo 24/06/2011, 10:52
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: como usar los triggers

Partamos de una serie de detalles:
1) Los TRIGGERS son rutinas almacenadas, pero no son ni funciones ni procedimientos.
2) Los TRIGGERS se ejecutan solos. No se pueden invocar y en la mayoría de los DBMS no se pueden detener.
3) Pertenecen a una sola tabla, por lo que no son prácticos en tareas generales de la base, es decir, si se quiere usar para un log de actualizaciones de tablas en la base se deberá definir un TRIGGER en cada tabla.
4) Los TRIGGER sólo se deben usar para tareas que se deban realizar siempre cuando una tabla se actualiza (INSERT/UPDATE/DELETE). No sirven si hay al menos una ocasión en que esa tarea no se deba realizar.
5) No se pueden usar si la operación que realizan puede invocar nuevamente el mismo TRIGGER. Esto significa que si un TRIGGER se dispara en A y afecta a B y B tiene un TRIGGER que afecta a A, se puede generar un loop infinito. El sistema no lo permitirá (es un deadlock).

Respecto a la sintaxis y ejemplos... Buen Google tiene muy buenas respuestas, si sabes cómo preguntar: Sintaxis de procedimientos almacenados en SQL Server
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:18.