Lorsque ce code est exécuté dans SQL Developer contre Oracle 11g je reçois une erreur,Expliquer "ORA-01870: les intervalles ou datetimes ne sont pas comparables entre elles"
begin
dbms_scheduler.create_job(
job_name => 'comuni_34',
job_type => 'plsql_block',
job_action => 'begin com_auth_api.expire_old_passwords; end;',
start_date => to_date('2009-jan-01 01:15:00', 'yyyy-mon-dd hh24:mi:ss'),
repeat_interval => 'freq=daily',
enabled => true,
comments => 'Expire old passwords'
);
end;
Ceci est l'erreur,
Error starting at line 4 in command:
begin
dbms_scheduler.create_job(
job_name => 'comuni_34',
job_type => 'plsql_block',
job_action => 'begin com_auth_api.expire_old_passwords; end;',
start_date => to_date('2009-jan-01 01:15:00', 'yyyy-mon-dd hh24:mi:ss'),
repeat_interval => 'freq=daily',
enabled => true,
comments => 'Expire old passwords'
);
end;
Error report:
ORA-01870: the intervals or datetimes are not mutually comparable
ORA-06512: at "SYS.DBMS_ISCHED", line 99
ORA-06512: at "SYS.DBMS_SCHEDULER", line 268
ORA-06512: at line 2
01870. 00000 - "the intervals or datetimes are not mutually comparable"
*Cause: The intervals or datetimes are not mutually comparable.
*Action: Specify a pair of intervals or datetimes that are mutually
comparable.
Une recherche sur Google n'a pas aidé car elle énumérait juste des tas de sites de code d'erreur Oracle inutiles. Peut-être que la source de SYS.DBMS_ISCHED/SYS.DBMS_SCHEDULER peut expliquer cela.
Mise à jour: Un travail différent qui utilise '2010-avr-20 01:15:00' au lieu de '2009-jan-01 01:15:00' vient de fonctionner peut-être le problème est que les dates qui sont trop loin dans le passé n'est pas géré correctement.
Mise à jour: L'utilisation de '2009-apr-01 01:15:00' au lieu de '2009-jan-01 01:15:00' vient de commencer. Cependant, '2009-mar-01 01:15:00' ne fonctionnait pas, il y a donc une limite à laquelle on peut commencer un travail. Depuis que j'ai résolu mon problème, je ne peux pas accepter une réponse qui est une répétition de ma solution, mais si quelqu'un veut expliquer cela plus loin, je vais envisager d'accepter cela.
Sinon, vous pouvez poster vos mises à jour comme une réponse et accepter. La documentation ne spécifie pas de limite inférieure pour le START_DATE et votre explication semble assez raisonnable. – APC