PURGE_QUEUE_TABLE

キューテーブルからメッセージを削除するには、 PURGE_QUEUE_TABLE 手順を使用します。署名は次のとおりです。

PURGE_QUEUE_TABLE(
  <queue_table> IN VARCHAR2,
  <purge_condition> IN VARCHAR2,
  <purge_options> IN aq$_purge_options_t)

Parameters

queue_table

queue_table は、メッセージを削除するキューテーブルの名前を指定します。

purge_condition

purge_condition を使用して、パージするメッセージを決定するときにサーバーが評価する条件(SQLの WHERE 句)を指定します。

purge_options

purge_optionsaq$_purge_options_t タイプのオブジェクトです。 aq$_purge_options_t オブジェクトには以下が含まれます。

属性

種類

説明

Block

ブール

テーブル内のすべてのキューで排他ロックを保持する必要がある場合は、 TRUE を指定します。デフォルトは FALSE です。

delivery_mode

整数

delivery_mode は、パージされるメッセージのタイプを指定します。受け入れられる値は DBMS_AQ.PERSISTENT のみです。

Example

次の匿名ブロックは、 YEScompleted 列に値を持つ work_order_table からすべてのメッセージを削除します。

DECLARE
   purge_options dbms_aqadm.aq$_purge_options_t;
BEGIN
   dbms_aqadm.purge_queue_table('work_order_table', 'completed = YES',
purge_options);
  END;