create or replace trigger TRI_w_user_AFR after insert or update or delete on sn_w_user for each row
begin if deleting then
delete from w_user where USER_ID=:old.USER_ID; end if; if inserting then insert into w_user(USER_ID,USER_LOGIN_NAME,USER_NAME,USER_TYPE,PASSWORD,CA,DEPARTMENT_ID,IS_DELETE) values(:new.USER_ID,:new.USER_LOGIN_NAME,:new.USER_NAME,:new.USER_TYPE,:new.PASSWORD,:new.CA,:new.DEPARTMENT_ID,:new.IS_DELETE); end if; if updating then update w_user set USER_LOGIN_NAME=:new.USER_LOGIN_NAME,USER_NAME=:new.USER_NAME,USER_TYPE=:new.USER_TYPE,PASSWORD=:new.PASSWORD,CA=:new.CA,DEPARTMENT_ID=:new.DEPARTMENT_ID,IS_DELETE=:new.IS_DELETE where USER_ID=:old.USER_ID; end if;end TRI_w_user_AFR;
如上代码,一个数据同步的触发器,可是用PLSQL编译的时候,走到if deleting then这一行当时候,提示错误信息:
TRIGGER DB_XYSI.TRI_W_USER_AFR 编译错误错误:PLS-00103: 出现符号 ""在需要下列之一时:
begin case declare exit for
goto if loop mod null pragma raise return select update while
with <an identifier> <a double-quoted delimited-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
pipe
行:3
文本: after insert or update or delete on sn_w_user求高手解决啊~
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货