UNIQUE_SESSION_NAME 関数 - 固有のセッション名を戻す

UNIQUE_SESSION_NAME 関数は、現行セッションの固有の名前を戻します。

この関数を使用して、現行セッションと同じ名前を持つパイプを作成できます。 このパイプを作成するには、UNIQUE_SESSION_NAME 関数によって戻された値を SEND_MESSAGE プロシージャーにパイプ名として渡します。 現行セッションと同じ名前を持つ暗黙的パイプが作成されます。

構文

構文図を読む構文図をスキップするDBMS_PIPE.UNIQUE_SESSION_NAME

戻り値

この関数は、現行セッションの固有の名前を表すタイプ VARCHAR (128) の値を戻します。

許可

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

現行セッションと同じ名前を持つパイプを作成します。

SET SERVEROUTPUT ON@ 

CREATE PROCEDURE proc1()
BEGIN
  DECLARE    status          INTEGER;
  DECLARE    v_session       VARCHAR(30);
  SET v_session = DBMS_PIPE.UNIQUE_SESSION_NAME;
  SET status = DBMS_PIPE.PACK_MESSAGE('message1');
  SET status = DBMS_PIPE.SEND_MESSAGE(v_session);
  CALL DBMS_OUTPUT.PUT_LINE('Sent message on pipe ' || v_session);
END@

CALL proc1@

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

Sent message on pipe *LOCAL.myschema.080522010048