`
zhaobing315
  • 浏览: 230296 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

oracle trigger跨用户报错

 
阅读更多

问题描述:

      数据库中有两个用户:cms和oss,我要实现在cms用户下插入一条记录然后通过trigger同步插入到oss用户中的某个表中去,但是create trigger的时候总是报错,提示oss下的那个表或视图不存在。

 

问题原因:

      这是由于oss用户的表没有对cms用户开放权限造成的。

 

解决方法:

      在oss用户中执行如下语句,将该表权限开放给cms用户即可。

      grant all on t_visitor_oss to cms;

 

附上我的trigger:

create or replace trigger trigger_t_visitor
  after insert or update or delete on trigger_test  
  for each row
declare
  -- local variables here
begin

  if inserting then
     insert into oss.t_visitor_oss
     (visitorid, clientid, userid, dyjuid, usertype, loginflag, msisdn, channelnumber, createdate)
     values(:NEW.visitorid, :NEW.clientid, :NEW.userid, :NEW.dyjuid, :NEW.usertype, :NEW.loginflag, :NEW.msisdn, :NEW.channelnumber, :NEW.createdate);
  end if;
  
  --if updating then
  --end if;
  
  --if deleting then
  --end if;
end trigger_t_visitor;
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics