--创建db link链接
-- create database link test connect to"wzx" identified by "123456" using 'orcl';
--测试语句如下
select * from test_user@test;
insert into test_user@test(id,name)values(1,'test');
--以上两个语句是正确的。 说明dblink 是成功的。
但是如果我把
-- insert into test_user@test(id,name)values(1,'test'); 放到触发器的 begin … end 中。就提示表或视图不存在。
在创建快照的时候也是如此:
Create snapshot sn_xwmc as select * from xwmc@test;
提示找不到表或视图。
单独执行 select * from xwmc@test; 是可以执行的。
请问下大家该怎么解决呢? ------解决方案-------------------- 权限问题,grant select, insert, update on tabname to username with grant option; ------解决方案-------------------- 尝试
create view v_test_user as select * from test_user@test;
insert into v_test (id,name)values(1,'test');
看看是否成功,同时观察报错情况 ------解决方案-------------------- 这么写是没什么问题的,重新登录再触发触发器试试,再不行就把test_user表的grant语句贴出来 ------解决方案--------------------
比如select * from lee.XX@dblk_a
或者
你创建DBLINK的用户为XIA 那么查看此表用户是否GRANT SELECT ON XX TO XIA