Bonjour,
J'aimerai savoir où trouver de la documentation sur l'utilisation de Oracle9i ou 10g Advanced Queuing.
Comment le programmer etc... C'est la première fois que je vais l'utiliser.
Merci d'avance
Bonjour,
J'aimerai savoir où trouver de la documentation sur l'utilisation de Oracle9i ou 10g Advanced Queuing.
Comment le programmer etc... C'est la première fois que je vais l'utiliser.
Merci d'avance
peut être ici
Merci beaucoup !
Bonne journée.
Re-bonjour,
Comment créer une procedure permettant de démarrer et arrêter un JOB par des messages en utilisant Oracle Advanced QUEUING (DBMS.ENQUEUE et DBMS.DEQUEUE) ?
Nous utilisons PLSQL Developer sous oracle 10g.
Merci beaucoup pour votre aide.
merci de continuer dans ce sujet
Qu'est ce qui te manque pour avancer sachant qu'on t'a fourni le lien vers la doc ?
En fait je me suis noyée dans la documentation. Je n'arrive pas à m'y prendre pour créer cette procédure de lancement et d'arrêt d'un JOB en utilisant le DBMS_AQ.ENQUEUE et DBMS_AQ.DEQUEUE.
J'ai tenté 2 ou 3 cas qui n'ont pas fonctionnés.
Ex:
Merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 create or replace procedure EI$TEST_ENQUEUE(usermsg event_msg_type, urgency NUMBER) AUTHID DEFINER IS msg_id RAW(16); queue_opts dbms_aq.enqueue_options_t; msg_props dbms_aq.message_properties_t; agent_props sys.aq$_agent; pragma autonomous_transaction; BEGIN agent_props := sys.aq$_agent(USER, NULL, 0); IF urgency < 5 THEN queue_opts.sequence_deviation := dbms_aq.top; ELSE queue_opts.sequence_deviation := NULL; END IF; msg_props.priority := urgency; msg_props.sender_id := aprop; IF urgency < 10 THEN msg_props.delay := dbms_aq.no_delay; msg_props.expiration := 300; -- push to exception queue in 5 min. ELSE msg_props.delay := 1; -- one second delay before sending msg_props.expiration := 1800; -- push to exception queue in 30 min. END IF; dbms_aq.enqueue('msg_queue', queue_opts , msg_props, usermsg, msg_id); COMMIT; END EI$TEST_ENQUEUE;
Fred_D : ajout des balises CODE
commençons par le début : pourquoi tu veux utiliser AQ ?
J'arrive sur un projet dans lequel furent créés des packages utilisant les DBMS_ALERT.register, DBMS.ALERT.waitone, DBMS-ALERT.signal pour mettre et retirer des messages en file d'attente. Ayant rencontrés des problèment, ils veulent à présent remplacer les DBMS_ALERT par les AQ.
-----------------------------------
Ex de code du système ancien:
-----------------------------------
1. JOB.
2. Notifier le JOB
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Procedure JOB IS Message Varchar2:= null; Begin DBMS_ALERT.REGISTER('JOB_NAME'); while MESSAGE IS NULL OR TRIM(MESSAGE)<>'STOP' LOOP JOB_EXECUTION; DBMS_ALERT.WAITONE('JOB_NAME', MESSAGE); END LOOP; DBMS_ALERT.REMOVE('JOB_NAME'); END;
L'AQ sera utilisé pour remplacer le code du système actuel dans toutes les procédures. D'où l'exemple de code de la procédure EI$TEST_ENQUEUE que je vous ai envoyé précédemment.
Code : Sélectionner tout - Visualiser dans une fenêtre à part [DBMS_ALERT.SIGNAL('JOB_NAME','MESSAGE');
J'espère avoir été assez claire.
En tous les cas, merci pour votre précieuse aide.
Bonjour,
Je souhaite savoir comment on utilise concrètement DBMS_AQ dans les procédures. Comment l'implémenter.
Merci par avance pour votre aide.
Bonjour,
Je tourne en rond depuis 3 jours sur l'Advanced queuing d'oracle. Quelqu'un pour m'aider ?
Merci d'avance !
Si tu n'as pas de réponse c'est que personne ne connait
dommage, je m'étais abonné à la discution parceque le sujet m'interressait...
Il a bien quelqu'un qui ait déjà utilisé ce package et qui pourrait m'expliquer son utilisation, non ?
J'ai juste besoin de savoir comment l'implémenter au remplacement des DBMS_ALERT.
Merci pour votre aide
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager