我有一张表table1
id name pwd sum
001 ss 123 100
002 ww 11 200
002 qq 22 100table2
id name cc
001 ss 00想建一个触发器,当我table1中的数据有变化,新增记录或者update任何字段的时候,就向表table2中插入
一条记录,id和name就是table1中被操作的数据,cc是我插入的一个固定值。
只要实现这个功能就行了,谢谢!
id name pwd sum
001 ss 123 100
002 ww 11 200
002 qq 22 100table2
id name cc
001 ss 00想建一个触发器,当我table1中的数据有变化,新增记录或者update任何字段的时候,就向表table2中插入
一条记录,id和name就是table1中被操作的数据,cc是我插入的一个固定值。
只要实现这个功能就行了,谢谢!
after update on t1
for each row
begin
insert into t2(id, name, cc) values(:new.id, :new.name, '00'); --:old.id, :old.name
end;
create or replace trigger tr_after_insert_t1
after insert on t1
for each row
begin
insert into t2(id, name, cc) values(:new.id, :new.name, '00'); --:old.id, :old.name
end;
:new代表新插入的表的数据,:old表时修改前的表的数据
after insert or update on table1
for each row
begin
insert into table2(id, name, cc) values(:new.id, :new.name, '00');
end;
create or replace trigger tr_after_update_t1
after update,delete,insert on t1
for each row
begin
if inserting then
insert into table2(id, name, cc) values(:new.id, :new.name, '00');
elsif updating then
update table2 set name=:new.name,cc=:new.cc where id=:old.id;
elsif deleting then
delete from table2 where id=:old.id;
end if;
EXCEPTION
WHEN others THEN
null;
end;这个触发器,删除更新插入都可以执行,应该满足你的要求了!