create table test(
aaa number,
bbb char(10),
ccc varchar2(10),
ddd varchar2(10),
eee varchar2(10),
fff varchar2(10)
)
begin
if updating('aaa') then
insert into BBB values(1,'aaa',:NEW.aaa);
elsif updating('bbb') then
insert into BBB values(2,'bbb',:NEW.aaa);
elsif updating('ccc') then
insert into BBB values(3,'ccc',:NEW.aaa);
elsif updating('ddd') then
insert into BBB values(4,'ddd',:NEW.aaa);
elsif updating('eee') then
insert into BBB values(5,'eee',:NEW.aaa);
elsif updating('fff') then
insert into BBB values(6,'fff',:NEW.aaa);
end if;
end;
请问知道test表所有字段值,如何动态得到上面的字段监控触发器.
注:'aaa' 表示字段名,:NEW.aaa ,表示主键值;
aaa number,
bbb char(10),
ccc varchar2(10),
ddd varchar2(10),
eee varchar2(10),
fff varchar2(10)
)
begin
if updating('aaa') then
insert into BBB values(1,'aaa',:NEW.aaa);
elsif updating('bbb') then
insert into BBB values(2,'bbb',:NEW.aaa);
elsif updating('ccc') then
insert into BBB values(3,'ccc',:NEW.aaa);
elsif updating('ddd') then
insert into BBB values(4,'ddd',:NEW.aaa);
elsif updating('eee') then
insert into BBB values(5,'eee',:NEW.aaa);
elsif updating('fff') then
insert into BBB values(6,'fff',:NEW.aaa);
end if;
end;
请问知道test表所有字段值,如何动态得到上面的字段监控触发器.
注:'aaa' 表示字段名,:NEW.aaa ,表示主键值;
比如:test中的aaa字段,如果更新此字段,就把aaa字段名及新主键值(每个监控字段这里都一样)插入到BBB表中;
注:表字段个数及名称是动态的.谢谢楼上的.