2012-04-27 63 views
1

如何找出哪個oracle登錄用戶調用了存儲過程本身內的存儲過程。我嘗試了CURRENT_USER,但失敗了。在存儲過程中查找調用者用戶

關於stackoverflow的問題與sql server有關。我正在特定於Oracle。

回答

2

您可以使用USER函數。或SYS_CONTEXT('USERENV', 'SESSION_USER')

+0

這就是正確的答案。 – Atif 2012-04-27 05:45:15

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>