En essayant de faire un travail à exécuter après chaque 1 minute,mais sa ne fonctionne pas?
J'ai fait ce travail,qui doit être exécutée dans un intervalle de 1 minute,mais ça ne fonctionne pas. Lorsque j'utilise execute dbms_job.run(2);
, il est exécuté. printe
est une procédure
S'il vous plaît suggérer!
BEGIN
DBMS_JOB.SUBMIT (
job =>:job_no,
WHAT=>'printe;',--Procedure
next_date=>sysdate+1/24*60,
interval=>'sysdate+1/24*60'
);
commit;
END;
Comment êtes-vous de vérifier si la procédure est exécutée? Que faut-il faire?
Cet intervalle est anormal. Si vous souhaitez exécuter à chaque minute, de ne pas l'intervalle d'être " SYSDATE + ((1 / 24) / 60)'? Comme indiqué, je pense qu'il répète toutes les 60 heures.
Cet intervalle est anormal. Si vous souhaitez exécuter à chaque minute, de ne pas l'intervalle d'être " SYSDATE + ((1 / 24) / 60)'? Comme indiqué, je pense qu'il répète toutes les 60 heures.
OriginalL'auteur Vineet | 2010-05-02
Vous devez vous connecter pour publier un commentaire.
Essayer next_date = sysdate + (1/24/60) et intervalle = (1/24/60)...
OriginalL'auteur Martin Milan
Ici est un travail simple.
Donc, la première chose à faire est de présenter à la fois l'heure de début et l'intervalle spécifié correctement. Si vous ne vous souvenez pas combien de minutes il y a dans une journée (1440) c'est une bonne idée d'utiliser des crochets. Comparons, de soumettre le travail avec votre date de spécifications ...
... avec des crochets pour affirmer la priorité ...
Clairement emploi 71 a pas de courir et ne va pas à exécuter pour un certain temps encore:
Travail de suivi 72 ....
Donc, si ce n'est toujours pas travailler pour vous, que devez-vous faire? La première chose est de vérifier si la base de données est configuré pour exécuter des travaux à tous. Vous aurez besoin de DBA accès pour cela.
Si je me souviens bien, dans Oracle 9i la valeur par défaut pour ce paramètre est de 0. Il doit être définie sur une valeur différente de zéro pour les travaux à exécuter.
Et si ce n'est pas le problème, vous devez vérifier les messages d'erreur dans le journal des alertes. Le
background_dump_dest
répertoire peut aussi avoir une certaine .cdt fichiers produits par un défaut d'emploi.Je ne sais pas ce qu'est exactement la raison en est, mais dans mon cas, le travail est en cours d'exécution comme prévu depuis un certain temps et puis il ne marche pas à la minute suivante. Je suis à l'aide de oracle 9i et la tâche est planifiée pour s'exécuter à chaque minute.
vraiment pas sûr de ce que vous attendez de moi pour le faire. C'est assez difficile à diagnostiquer des erreurs intermittentes dans mon propre système où j'ai plein accès. il n'y a aucune chance de faire quoi que ce soit avec certains aléatoire du système à distance sans aucune information.
Tout ce que je peux dire, c'est un travail qui s'exécute à chaque minute semble être une mauvaise décision architecturale. Vous avez probablement besoin d'une permanence l'exécution de processus d'arrière-plan qui dort pendant une minute, puis se réveille et fait quelque chose. Peut-être qu'il interroge un message de pile (table) et exécute un sous-programme, une sorte de mise en file d'attente de solution.
OriginalL'auteur APC