oracle trigger报错,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;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值