【发布时间】:2021-04-16 14:12:19
【问题描述】:
我想根据同一张表中另一列的值向列中插入一个值。
为此,我创建了以下触发器:
create or replace TRIGGER INSERT_COLUMN2_TBL1
BEFORE INSERT OR UPDATE ON TBL1
FOR EACH ROW
begin
:new.column1 := CASE
when :new.column1 LIKE 'REQUESTED' then
INSERT INTO tbl1 (column2)
VALUES ('REQUEST_PENDING');
when :new.column1 LIKE 'NOT_REQUESTED' then
INSERT INTO tbl1 (column2)
VALUES ('TEXT123');
end;
我收到以下错误:
PLS-00103: Encountered the symbol "INSERT" when expecting one of the following: ( - + case mod new not null <an identifier> <a double-quoted delimited-identifier> <a bind variable> continue
PLS-00103: Encountered the symbol "ELSE"
我不确定如何引用我尝试触发触发器的同一个表中的列。可以这样完成还是有更好的方法?
【问题讨论】: