create or replace TRIGGER last_modify_trigger
after update on FROM_PERSON_QUERY
for each ROW
begin
update FROM_PERSON_QUERY set :new.LASTMODIFY = SYSDATE where :new.ID_CARD=:old.ID_CARD
END
上面是我写的触发器语句,但是抱如下错误:
[SQL]create or replace TRIGGER last_modify_trigger
after update on FROM_PERSON_QUERY
for each ROW
begin
update FROM_PERSON_QUERY set :new.LASTMODIFY = SYSDATE where :new.ID_CARD=:old.ID_CARD
END
[Err] ORA-24344: 成功, 但出现编译错误
使用show error查看,并没有看到更多的提示信息
大神们给看看这个是咋回事儿呀!
6 个解决方案
#1
看语句没有问题,把这个表贴出来看看
#2
#3
#4
我看LZ的意思,是不是要把当前时间给 lastmodify 这列?
1. 用前触发,不用后触发
after update on FROM_PERSON_QUERY
改成
before
2.直接给 new.colsname 新值就可以了
update FROM_PERSON_QUERY set :new.LASTMODIFY = SYSDATE where :new.ID_CARD=:old.ID_CARD
改成
:new.lastmodify = sysdate ;
#5
现在主要的不是这个问题,问题是语法报错了,说是成功,但是编译错误
#6
说成功,说的是成功的创建了这个TR,编译不过是肯定的。
#1
看语句没有问题,把这个表贴出来看看
#2
#3
#4
我看LZ的意思,是不是要把当前时间给 lastmodify 这列?
1. 用前触发,不用后触发
after update on FROM_PERSON_QUERY
改成
before
2.直接给 new.colsname 新值就可以了
update FROM_PERSON_QUERY set :new.LASTMODIFY = SYSDATE where :new.ID_CARD=:old.ID_CARD
改成
:new.lastmodify = sysdate ;
#5
现在主要的不是这个问题,问题是语法报错了,说是成功,但是编译错误
#6
说成功,说的是成功的创建了这个TR,编译不过是肯定的。