创建普通表
createtable TT(idnumber,namevarchar2(20),timestampdate);
创建属性修改记录表
Create table TT_history(newid number,oldid number, newname varchar2(20), oldname varchar2(20), newtimestamp date,oldtimestamp date,tt VARCHAR2(20),term VARCHAR2(20),User_at VARCHAR2(20));创建触发器
create or replace trigger AA_test_triger
after update on TT
for each row
declare
begin
insert into TT_history values(:new.id,:old.id,:new.name,:old.name,:new.timestamp,:old.timestamp);
end TT;
或者
createorreplacetrigger AA
AFTERINSERTORUPDATEORDELETEON TT
foreachrow
declare
Time_now DATE;
Terminal CHAR(20);
begin
--get current time, and the terminal(终端) of the user:
Time_now := SYSDATE;
Terminal := USERENV('TERMINAL');
IF INSERTING THEN --记录对TT的插入操作
INSERT INTO TT_history VALUES(:new.id,:old.id,:new.name,:old.name,Time_now,:old.timestamp,'INSERT ',Terminal,User);
ELSIF DELETING THEN --记录对TT的删除操作
INSERT INTO TT_history VALUES(:new.id,:old.id,:new.name,:old.name,Time_now,:old.timestamp,'DELETE ',Terminal,User);
ELSIF UPDATING THEN --记录对TT的修改操作
INSERT INTO TT_history VALUES(:new.id,:old.id,:new.name,:old.name,Time_now,:old.timestamp,'update ',Terminal,User);
END IF;
END;
修改记录查询