尝试创建一个触发器,将clob字段更新为rtrim
硬件返回应用程序正在折腾。
无法访问应用程序代码,因此我认为没有其他方法可以使用触发器对数据进行可能需要的更改。
并不总是添加回报。
此代码抛出错误....
预期的数据类型不一致得到了clob。
我认为声明这个领域会避免这个问题......但是没有......
非常感谢任何帮助或建议。
CREATE OR REPLACE TRIGGER AI_master_set
AFTER INSERT ON base1
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE
master_set CLOB;
BEGIN
UPDATE base1
set master_set= rtrim(master_set,chr(00))
WHERE master_set = :new.master_set;
:new.master_set:= master_set;
END;
答案 0 :(得分:0)
基于没有名字的马,以及Oracle (11g) compound trigger not updating CLOB data field,这应该只是起作用:
CREATE OR REPLACE TRIGGER AI_master_set
before INSERT ON base1
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE
tmp_master_set CLOB;
BEGIN
tmp_master_set := rtrim(:new.master_set,chr(00));
:new.master_set:= tmp_master_set ;
END;
/
希望它有所帮助。