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

Triggers

Estas en el tema de Triggers en el foro de Bases de Datos General en Foros del Web. Hola estoy haciendo una aplicacion web. Necesito que el sistema cambie unos determinados valores de la BD en un momento concreto. Para hacer esto me ...
  #1 (permalink)  
Antiguo 19/08/2005, 17:37
 
Fecha de Ingreso: julio-2005
Mensajes: 102
Antigüedad: 18 años, 9 meses
Puntos: 0
Triggers

Hola estoy haciendo una aplicacion web.
Necesito que el sistema cambie unos determinados valores de la BD en un momento concreto. Para hacer esto me han hablado de triggers. ¿Son recomendables para esta situacion?¿alguna otra manera de hacerlo?

Cualquier documentacion os la agradeceria mucho
Gracias...
  #2 (permalink)  
Antiguo 22/08/2005, 16:20
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Los triggers no responden a "momentos concretos", sino a eventos en tu tabla, como cada INSERT, UPDATE o DELETE.

Si lo que quieres es algo del tipo "que borre xxx cada 2 horas" no es lo que buscas. Si lo que quieres es del tipo "que actualice la tabla de totales de inventario cada que de de baja un producto" entonces si.

También tienes que revisar si tu RDBMS soporta triggers, por ejemplo MySQL hasta donde me quedé no los soportaba.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 22/08/2005, 19:07
 
Fecha de Ingreso: julio-2005
Mensajes: 102
Antigüedad: 18 años, 9 meses
Puntos: 0
Por el RDBMS no tengo problema, ya q uso Oracle.
Para ser exactos lo que quiero es hacer un update cuando la hora del sistema sea la misma que un campo Date que tengo almacenado en mi BD.¿Para esto sirven los triggers?¿Que podria usar en caso contrario?

Gracias por contestar
  #4 (permalink)  
Antiguo 23/08/2005, 15:29
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
No, en ese caso usas un Job (asi se llaman en SQL Server, no se en Oracle).

Ahí tu indicas la operacion (sql, stored procedure, batch de sistema, etc) que quieres ejecutar y le calendarizas eventos. Por ejemplo yo los tengo programados para hacer descargas de tablas a mi servidor a una hora específica del dia.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #5 (permalink)  
Antiguo 23/08/2005, 18:41
 
Fecha de Ingreso: julio-2005
Mensajes: 102
Antigüedad: 18 años, 9 meses
Puntos: 0
OK, muchas gracias.
¿Y como se crea un job? ¿Me podrias facilitar algo de informacion?
  #6 (permalink)  
Antiguo 24/08/2005, 15:19
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
En Oracle no tengo idea. En SQL Server los encuentras dentro de la rama Management -> SQL Server Agent -> Jobs, de tu servidor.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
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 19:17.