Drucken
Kategorie: Allgemein
Zugriffe: 312

Um alle nicht versendeten Messages aus eine Queue zu löschen folgende ausführen.

    DECLARE
    po dbms_aqadm.aq$_purge_options_t;
    BEGIN
       po.block := TRUE;
       DBMS_AQADM.PURGE_QUEUE_TABLE(
         queue_table     => '[QUEUE NAME]',
         purge_condition => 'qtview.deq_time is null',
         purge_options   => po);
    END;
    /

 um eine Queue komplett zu leeren folgendes ausführen

    -- purge queue
    DECLARE
     po_t dbms_aqadm.aq$_purge_options_t;
    BEGIN
      dbms_aqadm.purge_queue_table('[QUEUE-TABLE NAME]', NULL, po_t);
    END;