Oracle函数——其他函数

1、SYS_GUID()函数:生成32位的唯一编码。来生成唯一主键
select sys_guid() from dual;
2、UID:返回一个唯一标识的登录用户的整数。
select username,user_id from dba_users where user_id=uid;
3、USER:取得当前oracle用户的名字,返回的结果是一个VARCHAR2型字符串.
select user from  dual;
4、SYS_DBURIGEN(column)函数:根据列或属性生产类型为DBUriType的URL。
5、sys_coniext('context','attribute')函数:第一个参数为'USERENV',是固定的,第二个参数也是固定的,但是是多选固定,可选的值如下所示:
SELECT SYS_CONTEXT('USERENV', 'TERMINAL') 客户端名称,
       SYS_CONTEXT('USERENV', 'LANGUAGE') 客户端语言,
       SYS_CONTEXT('USERENV', 'SESSIONID') sessionid,
       SYS_CONTEXT('USERENV', 'INSTANCE') instance,
       SYS_CONTEXT('USERENV', 'ENTRYID') entryid,
       SYS_CONTEXT('USERENV', 'ISDBA') isdba,
       SYS_CONTEXT('USERENV', 'NLS_TERRITORY') 地区,
       SYS_CONTEXT('USERENV', 'NLS_CURRENCY') 货币,
       SYS_CONTEXT('USERENV', 'NLS_CALENDAR') nls_calendar,
       SYS_CONTEXT('USERENV', 'NLS_DATE_FORMAT') 时间格式,
       SYS_CONTEXT('USERENV', 'NLS_DATE_LANGUAGE') 时间语言,
       SYS_CONTEXT('USERENV', 'NLS_SORT') nls_sort,
       SYS_CONTEXT('USERENV', 'CURRENT_USER') current_user,
       SYS_CONTEXT('USERENV', 'CURRENT_USERID') current_userid,
       SYS_CONTEXT('USERENV', 'SESSION_USER') session_user,
       SYS_CONTEXT('USERENV', 'SESSION_USERID') session_userid,
       SYS_CONTEXT('USERENV', 'PROXY_USER') proxy_user,
       SYS_CONTEXT('USERENV', 'PROXY_USERID') proxy_userid,
       SYS_CONTEXT('USERENV', 'DB_DOMAIN') db_domain,
       SYS_CONTEXT('USERENV', 'DB_NAME') 数据库名称,
       SYS_CONTEXT('USERENV', 'HOST') 客户端完成名称,
       SYS_CONTEXT('USERENV', 'OS_USER') 客户端用户,
       SYS_CONTEXT('USERENV', 'EXTERNAL_NAME') external_name,
       SYS_CONTEXT('USERENV', 'IP_ADDRESS') 客户端IP地址,
       SYS_CONTEXT('USERENV', 'NETWORK_PROTOCOL') 网络协议,
       SYS_CONTEXT('USERENV', 'BG_JOB_ID') bg_job_id,
       SYS_CONTEXT('USERENV', 'FG_JOB_ID') fg_job_id,
       SYS_CONTEXT('USERENV', 'AUTHENTICATION_TYPE') authentication_type,
       SYS_CONTEXT('USERENV', 'AUTHENTICATION_DATA') authentication_data
  FROM DUAL
结果:

6、USERENV(option)函数:根据参数option,取得一个有关当前会话信息的VARCHAR2数值.返回当前用户环境的信息
OPTION='ISDBA'若当前是DBA角色,则为TRUE,否则FALSE.
OPTION='LANGUAGE'返回数据库的字符集.
OPTION='SESSIONID'为当前会话标识符.
OPTION='ENTRYID'返回可审计的会话标识符.
OPTION='LANG'返回会话语言名称的ISO简记.
OPTION='INSTANCE'返回当前的实例.
OPTION='terminal'返回当前计算机名

ISDBA  查看当前用户是否是DBA如果是则返回true
select userenv('isdba') from dual;

猜你喜欢

转载自blog.csdn.net/qq_33459369/article/details/80419524