Use sysdate and user function in a trigger
SQL> CREATE TABLE DEPT( 2 DEPTNO NUMBER(2), 3 DNAME VARCHAR2(14), 4 LOC VARCHAR2(13) 5 ); Table created. SQL> SQL> INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK'); 1 row created. SQL> INSERT INTO DEPT VALUES (20, 'RESEARCH', 'DALLAS'); 1 row created. SQL> INSERT INTO DEPT VALUES (30, 'SALES', 'CHICAGO'); 1 row created. SQL> INSERT INTO DEPT VALUES (40, 'OPERATIONS', 'BOSTON'); 1 row created. SQL> SQL> alter table dept add(last_update date,last_user varchar2(30)); Table altered. SQL> SQL> CREATE OR REPLACE TRIGGER deptBR 2 before update or insert 3 ON dept 4 FOR EACH ROW 5 DECLARE 6 begin 7 :new.last_update := sysdate; 8 :new.last_user := user; 9 end; 10 / Trigger created. SQL> SQL> drop table dept; Table dropped.