当前位置: 代码迷 >> Java Web开发 >> Oracle触发器有关问题,大神们围观吧
  详细解决方案

Oracle触发器有关问题,大神们围观吧

热度:163   发布时间:2016-04-16 21:59:52.0
Oracle触发器问题,大神们围观吧
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查看,并没有看到更多的提示信息

大神们给看看这个是咋回事儿呀!

------解决方案--------------------
看语句没有问题,把这个表贴出来看看
------解决方案--------------------
我看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 ; 
  相关解决方案