Generar updates automáticos

 

Hola!!

Tengo un problema que no se como resolverlo. Me gustaría generar updates sobre algunas de las filas de una tabla de manera automática una vez al día. He visto que por medio de jobs es posible pero aun así no se como hacerlo. 

El update sería el siguiente:
UPDATE "subscriber" set "status" = 0 where "status" = 2 and "optout_date" < sysdate;


Gracias de antemano.

Hola Mario

 

Tendrías que crear un procedimiento almacenado que ejecute la sentencia, y después crear el job programado que ejecute el procedure cada día a la hora que le indiques.

El job lo puedes crear desde el entorno SQL, o también podrías hacerlo desde el entorno del Enterprise Manager. Te copio un ejemplo de creación de job que llama a un procedure, sacado de la página sobre utilización de Jobs de la documentación de Oracle:

BEGIN
DBMS_SCHEDULER.CREATE_JOB (
   job_name           =>  'update_sales',
   job_type           =>  'STORED_PROCEDURE',
   job_action         =>  'OPS.SALES_PKG.UPDATE_SALES_SUMMARY',
   start_date         =>  '28-APR-08 07.00.00 PM Australia/Sydney',
   repeat_interval    =>  'FREQ=DAILY;INTERVAL=2', /* every other day */
   end_date           =>  '20-NOV-08 07.00.00 PM Australia/Sydney',
   job_class          =>  'batch_update_jobs',
   comments           =>  'My new job');
END;
/

Saludos,