首页 > 解决方案 > ':'冒号在Oracle中是什么意思?

问题描述

 if (:new.first_name is not null) then
       :new.first_name := substr(regexp_replace(:new.first_name,'[^'||chr(1)||'-'||chr(127)||']',null),1,20);
    end if;

有人可以帮我处理这段代码吗?我不明白!

标签: oracleplsqlregexp-replace

解决方案


此代码可能来自 UPDATE 或 INSERT 触发器,它引用包含该行的新值的伪行

UPDATE x
SET y = 'z'
WHERE y = 'a'

此更新的触发器将具有一个:old伪行 where column yis'a'和一个:new伪行 where yis 'z'。如果您修改触发器:new中的值before,它将更改写入表的内容


推荐阅读