科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道在Oracle中使用登录触发器初始化用户会话

在Oracle中使用登录触发器初始化用户会话

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

虽然由于遗留原因,USERENV函数仍在使用,但在Oracle 8i中,它已被一个新的函数所替代——SYS_CONTEXT。

作者:builder.com.cn 2007年4月5日

关键字: ORACLE

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)

下面的代码说明了一个登录触发器,它在用户登录时调用安全数据包为用户初始化上下文。如果定位正确的部门出现错误,触发器将通过一个EXCEPTION(异常)处理它。否则,没有部门设置的用户将无法登录。

CREATE OR REPLACE TRIGGER DBT_LOGON

AFTER LOGON

ON DATABASE

BEGIN

HR.HR_CONTEXT_PKG.INITIALIZE_HR_CONTEXT;

EXCEPTION

WHEN OTHERS THEN

NULL;

END;

/

这样,现在任何应用程序都能够找出当前用户与哪个部门相关联,而不必进行多次逻辑读取,从一个表中查询它。例如:

SELECT SYS_CONTEXT('HR_CONTEXT','DEPT') FROM DUAL;

这行代码将返回当前用户的部门ID。

Bob Watkins(OCP、MCDBA、MCSE、MCT)是一位有25年经验的计算机专业人士,从事过技术培训师、顾问与数据库管理员等职

责任编辑:张琎

查看本文国际来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章