REGISTER プロシージャー - 指定されたアラートを受信するように登録する

REGISTER プロシージャーは、指定されたアラートを受信するように現行セッションを登録します。

構文

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

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

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

許可

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

REGISTER プロシージャーを使用して 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