暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

sql 存储过程中得到用户名

原创 Anbob 2011-04-13
572
到到当SESSION 用户名的方法很多如select user from dual; select username from user_users; SYS_CONTEXT('USERENV','CURRENT_USER')等 等
SQL> conn test/test;
Connected.
SQL> create  table test_pro(id int,
2  name varchar2(20),
3  insertdate date);
Table created.

SQL> create or replace procedure p_user
2  is
3  begin
4  insert into test_pro(id,name,insertdate) values(userenv('SESSIONID'),user,sysdate);
5  end;
6  /
Procedure created.
SQL> conn system/oracle
Connected.
SQL> create public synonym p_user for test.p_user;
Synonym created.
SQL> exec p_user;
PL/SQL procedure successfully completed.
SQL> select * from test.test_pro;
ID NAME                                     INSERTDATE
---------- ---------------------------------------- --------------
13000 SYSTEM                                   13-4月 -11
SQL> conn test/test
Connected.
SQL> exec p_user;
PL/SQL procedure successfully completed.
SQL> select * from test_pro;
ID NAME                                     INSERTDATE
---------- ---------------------------------------- --------------
13000 SYSTEM                                   13-4月 -11
13001 TEST                                     13-4月 -11
SQL>
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论