Oracle 记录操作时长

CREATE OR REPLACE TRIGGER XTGL_LOGON_TRIGGER
AFTER logon ON DATABASE
BEGIN
INSERT INTO XTGL_LOGON(SESSIONID,IPADDRESS,MACHINENAME,PROGRAMNAME,LOGONDATE,LOGONID)

VALUES(sys_context(‘userenv‘,‘SESSIONID‘),ora_client_ip_address,sys_context(‘userenv‘,‘TERMINAL‘),
‘客户端‘,SYSDATE,sys_context(‘userenv‘,‘SESSIONID‘));
END;
追问
oracle用触发器来记录用户登录信息(能记录在线时间和离线时间和在线时长) 两个用户登录
回答
CREATE OR REPLACE TRIGGER XTGL_LOGOFF_TRIGGER
BEFORE logoff ON DATABASE
BEGIN
INSERT INTO XTGL_LOGON(SESSIONID,IPADDRESS,MACHINENAME,PROGRAMNAME,LOGONDATE,LOGONID)

VALUES(sys_context(‘userenv‘,‘SESSIONID‘),ora_client_ip_address,sys_context(‘userenv‘,‘TERMINAL‘),
‘离线‘,SYSDATE,sys_context(‘userenv‘,‘SESSIONID‘));
END;
这个离线触发器,把上线和离线都记录下来,你想统计什么就统计什么呗

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。