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;
OPTION='LANGUAGE'返回数据库的字符集.
OPTION='SESSIONID'为当前会话标识符.
OPTION='ENTRYID'返回可审计的会话标识符.
OPTION='LANG'返回会话语言名称的ISO简记.
OPTION='INSTANCE'返回当前的实例.
OPTION='terminal'返回当前计算机名
ISDBA 查看当前用户是否是DBA如果是则返回true
select userenv('isdba') from dual;