在存储过程中查找来电者用户

时间:2012-04-27 05:19:55

标签: oracle stored-procedures

如何找出登录用户的oracle在存储过程本身内调用了存储过程。我试过CURRENT_USER但是失败了。

stackoverflow上的问题与sql server有关。我看起来特定于oracle。

2 个答案:

答案 0 :(得分:4)

您可以使用USER功能。或SYS_CONTEXT( 'USERENV', 'SESSION_USER' )

答案 1 :(得分:1)

只需引用伪列USER:

SQL> create or replace procedure sp as
  2  v_user varchar2(32) := USER;
  3  begin
  4  dbms_output.put_line(v_user);
  5  end;
  6  /

Procedure created.

SQL> begin sp; end;
  2  /
THEUSER

PL/SQL procedure successfully completed.

SQL>