【问题标题】:PLSQL, SQL*PLUS get current username?PLSQL、SQL*PLUS 获取当前用户名?
【发布时间】:2014-06-18 12:16:10
【问题描述】:

我知道 show user 命令返回:USER is "SCOTT"

但是是否有可能在 sql 查询或 plsql 脚本中只获取当前用户的用户名并将其存储在变量中?

【问题讨论】:

  • select user from dual

标签: sql plsql sqlplus


【解决方案1】:
fnd_profile.value('USERNAME')
fnd_profile.value('USER_ID')
fnd_flobal.user_id

这些可用于获取用户详细信息

【讨论】:

  • fnd_profile 不是标准的 Oracle 包。能给个Oracle手册的链接吗?
  • 更多信息请参考link
  • 那是 Oracle 电子商务套件。这与 Oracle 的数据库产品不同。您不能通过 SQL*Plus 在 SQL 或 PL/SQL 中使用这些函数
【解决方案2】:

可以使用USER内置函数。

DECLARE
  v VARCHAR2(30);
BEGIN
  v := USER;
END;

【讨论】:

【解决方案3】:
SYS_CONTEXT( 'USERENV', 'CURRENT_USER' )

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-21
  • 2013-04-19
  • 2018-10-25
  • 2011-11-28
  • 1970-01-01
相关资源
最近更新 更多