(使用Oracle 11G)
所以我有这个UPDATE
触发器,它的工作是从我的ccv_p TABLE
获取一行并在每个声明之前将其插入我的oldRecord RECORD
(It&#39 ; sa复合触发器),之后,我想通过oldRecord在每行语句后得到该行的PRC_ID
...似乎没有工作,但它不会在我的测试表中插入任何内容。通过一些调试,我发现我的问题在于select语句,但我在Oracle中并没有太多经验......有什么想法吗?这是一些重要的代码片段:
oldRecord CCV_P%ROWTYPE;
select ccv_p.* into oldRecord from ccv_p inner join parcel on ccv_p.prc_id = parcel.prc_id where ccv_p.PRC_ID = :new.PRC_ID;
insert into TEST$_TABLE (TEST$_TABLE.num) VALUES (oldRecord.PRC_ID);
答案 0 :(得分:0)
是否为CCV_P表定义了触发器? 在这种情况下,您不需要查询表格。你可能想做的是:
1)填充你的记录类型
my_rec.PRC_ID := :old.PRC_ID;
2)插入你的表格
insert into TEST$_TABLE (TEST$_TABLE.num) VALUES (:old.PRC_ID);
这当然不适用于插入