REMOVE プロシージャー - 指定されたアラートの登録を除去する

REMOVE プロシージャーは、指定されたアラートの登録を現行セッションから除去します。

構文

構文図を読む構文図をスキップするDBMS_ALERT.REMOVE(name)

プロシージャー・パラメーター

name
アラートの名前を指定する、タイプ VARCHAR (128) の入力引数。

許可

DBMS_ALERT モジュールに対する EXECUTE 特権。

REMOVE プロシージャーを使用して、alert_test というアラートを除去します。

SET SERVEROUTPUT ON@

CREATE PROCEDURE proc1()
BEGIN
  DECLARE v_name    VARCHAR(30) DEFAULT 'alert_test';
  DECLARE v_msg     VARCHAR(80);
  DECLARE v_status  INTEGER;
  DECLARE v_timeout INTEGER DEFAULT 5;
  CALL DBMS_ALERT.REGISTER(v_name);
  CALL DBMS_OUTPUT.PUT_LINE('Waiting for signal...');
  CALL DBMS_ALERT.WAITONE(v_name , v_msg , v_status , v_timeout);
  CALL DBMS_OUTPUT.PUT_LINE('Alert name   : ' || v_name);
  CALL DBMS_OUTPUT.PUT_LINE('Alert status : ' || v_status);
  CALL DBMS_ALERT.REMOVE(v_name);
END@

CALL proc1@

この例では、以下の出力が結果として戻ります。


Waiting for signal...
Alert name   : alert_test
Alert status : 1