Advanced Queuing (AQ) is Oracle’s
implementation of a messaging system which can be used as a
replacement for the dbms_pipe package and other bespoke
solutions. The basic unit of the Oracle
Advanced Queuing messaging system is a message with the
most important element of the message being its contents, or
payload.
The payload of the
advanced queuing
message can be as simple or complicated as desired.
In this case, the only concern is that the message has been
sent. The particular contents are not important at this
time, so the message is extremely simple.
Administration of queues within Oracle
Advanced Queuing
is done using the dbms_aqadm package and
requires the aq_administrator_role to be granted to the
administrator. Alternatively, all administration can be
performed by a privileged user such as SYS or SYSTEM. With
the payload object defined, the queue table is created using the
create_queue_table procedure.
Once the queue table has been created, the
individual queues are created and started using the
create_queue and start_queue procedures
respectively. A single queue table can hold many queues as
long as each queue uses the same type for its payload.
Messages are queued and de-queued within
Oracle
Advanced Queuing
using the dbms_aq package. Access to this
package can be granted using the aq_user_role role.
However, access to it from a stored procedure is achieved by
using the job_chain_aq_setup.sql script, which grants
the privilege on this object directly to the test user.
See these related notes on Oracle advanced
Queuing:
-
-
-
-
-
-