我写了一个update的触发器,不知道错在那里?(50分)

  • 主题发起人 主题发起人 sxbug
  • 开始时间 开始时间
S

sxbug

Unregistered / Unconfirmed
GUEST, unregistred user!
在oracle 9的触发器主体里面我写的语句如下:
begin
update JAMIS.GETCOMMCOST
set
( COMUNICATECOST, EMPNO_INNER, FAXCOST, PHONEHOMECOST,PHONEHOMECOST1,PHONEHOMECOST2,
PHONEMOBILECOST,PHONEMOBILECOST1, PHONEMOBILECOST2, PHONEMOBILECOST3,PHONEWORKCOST,
E_MAIL, FAX, PHONE_HOME, PHONE_HOME1,PHONE_HOME2,PHONE_MOBILE,PHONE_MOBILE1,
PHONE_MOBILE2, PHONE_MOBILE3, PHONE_WORK, USERNAME )
=
(:NEW.COMUNICATECOST,:NEW.EMPNO_INNER,:NEW.FAXCOST,:NEW.PHONEHOMECOST,:NEW.PHONEHOMECOST1,:NEW.PHONEHOMECOST2,
:NEW.PHONEMOBILECOST,:NEW.PHONEMOBILECOST1, :NEW.PHONEMOBILECOST2, :NEW.PHONEMOBILECOST3, :NEW.PHONEWORKCOST,
:NEW.E_MAIL,:NEW.FAX,:NEW.PHONE_HOME, :NEW.PHONE_HOME1, :NEW.PHONE_HOME2, :NEW.PHONE_MOBILE,:NEW.PHONE_MOBILE1,
:NEW.PHONE_MOBILE2, :NEW.PHONE_MOBILE3,:NEW.PHONE_WORK, :NEW.USERNAME )
where
PAY_DATE = :OLD.PAY_DATE AND
EMPNO = :OLD.EMPNO;
end;
谢谢
 
我还有一个问题:
我的前台程序,delphi里面是用updatesql更新视图的。
开始我写的更新语句是
COMMUNICATECOST=:NEW。COMMUNICATECOST.....

这样触发器倒没有错,但运行后更新记录时出现:ora触发器不能超过50级递归.......
出错!
 
一个视图如果不写触发器,更新数据,会有效吗?
我以前没写触发器它也能更新数据,但偶而会掉数据,视图里面我做个一个连接表
(2个表的连接)
高手门说说为什么?
 
你的update对象,因该是表,不应该是试图
 
接受答案了.
 
后退
顶部