我正在尝试写通用的pl/sql到(Re)已经入队的消息(以任何状态存在于队列表中)。
当队列上启用了出队时,它工作得很好,这样我就可以在浏览模式下首先出队,以便填充DBMS_AQ.message_properties_t并从现有消息加载。但是,当出队被禁用时,我如何获取它们呢?
DBMS_AQ.enqueue(
queue_name => fine,
enqueue_options => fine,
message_properties => how from existing message,
payload => how from existing message
(probably can select, not big deal),
msgid => fine);谢谢
发布于 2011-05-10 02:18:45
在甲骨文的网站上有一个很好的例子来说明如何做到这一点:http://download.oracle.com/docs/cd/B10500_01/appdev.920/a96587/apexampl.htm
基本上,你可以以一种非破坏性的方式“出队”(IE出队是为了浏览)。因为您没有出队,所以消息仍然保留在适当的位置。
发布于 2014-09-23 21:40:34
无论是在模式还是在remove模式下,您都有启用排队以获得消息的功能:
begin
sys.dbms_aqadm.start_queue('[QUEUE_NAME]', true, true);
end;
/https://stackoverflow.com/questions/5939307
复制相似问题