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

Como programar ejecución diaria automática de consulta

Estas en el tema de Como programar ejecución diaria automática de consulta en el foro de Mysql en Foros del Web. Hola, mi problema es el siguiente necesito que todas las noches se ejecute una consulta o un procedimiento que me genere un informe de las ...
  #1 (permalink)  
Antiguo 19/03/2007, 17:12
 
Fecha de Ingreso: marzo-2007
Mensajes: 26
Antigüedad: 12 años, 8 meses
Puntos: 0
Exclamación Como programar ejecución diaria automática de consulta

Hola, mi problema es el siguiente necesito que todas las noches se ejecute una consulta o un procedimiento que me genere un informe de las ventas de ese día y se almacene en una tabla. ¿Existe alguna forma de programar MySQL para que lanze automaticamente a una hora determinada una consulta?


Gracias por la ayuda
  #2 (permalink)  
Antiguo 19/03/2007, 17:59
 
Fecha de Ingreso: diciembre-2006
Mensajes: 127
Antigüedad: 13 años
Puntos: 1
Sonrisa Re: Como programar ejecución diaria automática de consulta

Puedes usar un archivo batch en el ke llames tu procedure y ejecutar ese archivo por lotes con el programador de tareas...o usa el mysql 5.1 ke viene con su agent jobs...saludos
  #3 (permalink)  
Antiguo 19/03/2007, 19:44
 
Fecha de Ingreso: marzo-2007
Mensajes: 26
Antigüedad: 12 años, 8 meses
Puntos: 0
Mensaje Re: Como programar ejecución diaria automática de consulta

Bueno lo del batch lo voi a dejar para luego pq estoi en el Mac y no se muy bien cual es la sintaxis de script de mac. Agradesco si alguien me responde con el codigo o pseudocodigo del mac-script: simplemente que se conecte y ejecute un procedure X();

Mirando las nuevas caracteristicas de mysql 5.1 en fase alpha encontré, como dijiste, Events o tambien llamados Temporary Triggers que viene a ser el equivalente de Agent Job de Oracle.

¿Merece la pena instalar mysql 5.1, es lo suficientemente estable?
Es sorprendente que mysql con el exito que tiene esté tan poco desarrollado en algunos aspectos. Antes de mysql 5.0, la versión estable actual, no soportaba triggers, procedures ni muchas otras cosas.

Debajo os pongo un resumen de la documentacion sobre el tema disponible en la web oficial de mysql


"In this article, I'll give a preliminary description of a new MySQL feature for scheduling and executing tasks. In version 5.1.6, MySQL has added support for events. That is, you can now say: "I want the MySQL server to execute this SQL statement every day at 9:30am, until the end of the year" -- or anything similar that involves any number of SQL statements, and a schedule."

SINTAXIS

Código PHP:
CREATE EVENT [ IF NOT EXISTS event_name
ON SCHEDULE schedule
ON COMPLETION NOT PRESERVE ]
ENABLED DISABLED ]
COMMENT 'comment' ]
DO 
sql_statement

EJEMPLO

Código PHP:
CREATE EVENT e
 ON SCHEDULE EVERY 1 YEAR
   ENDS CURRENT_TIMESTAMP 
INTERVAL 5 YEAR
 
DO DROP TABLE t
Ver::: dev.mysql.com/tech-resources/articles/event-feature.html

Gracias un saludo

Jorge F.M. (UAX)
  #4 (permalink)  
Antiguo 19/03/2007, 20:14
 
Fecha de Ingreso: diciembre-2006
Mensajes: 127
Antigüedad: 13 años
Puntos: 1
Re: Como programar ejecución diaria automática de consulta

Mi archivo por lotes en win esta asi:

mysql -u root -pmanager test -e "call consok()"
y ese lo llamo con el programador de tareas del sistema operativo

Saludos
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:54.