这是我的创建触发器声明:
I am nested!
我想要的是,每当我在CREATE OR REPLACE TRIGGER time_of_inserts
AFTER INSERT ON t_workers
FOR EACH ROW
BEGIN
SELECT pk_workerid, sysdate archivetime
into t_logtable
from t_workers
END;
表中插入一个新行时,我想插入一个新的主键(它可以是1中唯一的,或者复制插入的数据),以及插入新表的时间(t_workers
)。但我不知道如何每次都将它插入新表中。你可以看到上面我到目前为止所做的事情。
答案 0 :(得分:4)
"我的主要问题是每次触发时都会插入新表格#34;
但是你没有插入,你正在选择。要插入,您需要指定insert
关键字:)
此外,您不想从触发表中进行选择:请改用:NEW命名空间。
CREATE OR REPLACE TRIGGER time_of_inserts
AFTER INSERT ON t_workers
FOR EACH ROW
BEGIN
insert into t_logtable
values (:new.pk_workerid , sysdate );
END;
为消除明显的混淆,SELECT ... INTO填充本地(PL / SQL)变量。它不是我们用于插入表格的语法。