我的 Derby 数据库有一个插入触发器。此触发器的目的是获取插入 table_1 的所有内容并将该信息复制到 table_2 中。当我输入静态数字时,我的代码可以正常工作并向 table_2 添加一行,但我无法找到一种方法来简单地获取刚刚插入 table_1 的行的值。
create trigger insert_new_row
after insert on table_1
referencing new as insertedrow
for each row
insert (a,b,c)
values(a,b,c);
在这一values
部分中,我需要刚刚插入 table_1 的值(最新值)。我也试过(insertedrow.a
- ) ( :insertedrow.a
) ( new.a
) (从 table_1 中选择一个)和(从 table_1 中选择一个,其中 a = 插入行.a)但这些都不起作用。
示例-如果插入语句读取-
insert into table_1 (a,b,c)
values(1,2,3);
我需要触发器在 table_2 中插入具有相同值 (1,2,3) 的行。列名称相同,因此触发
create trigger insert_new_row
after insert on table_1
referencing new as insertedrow
for each row
insert (a,b,c)
values(1,2,3);
会起作用,但不实用,因为我需要在幕后发生这种情况,并且需要使用原始插入语句更改值。有任何想法吗?