首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

咨询一个存储过程中调用dblink的有关问题

2013-04-22 
咨询一个存储过程中调用dblink的问题存储过程中有段代码iv_temp_tab : temp_0407@dblink ----这是一个

咨询一个存储过程中调用dblink的问题

存储过程中有段代码

iv_temp_tab := 'temp_0407@dblink'; ----这是一个远程表。

当我insert本地一个表的时候出问题
insert into tmp_local
select * from iv_temp_tab;
报错 表或者视图不存在。请教一下大家,这个地方该如何写,因为这个表明会变动,所以我只能这么写。
也就是在催出过程中如何调用已经设置成变量的远程表。

[解决办法]
 
iv_temp_tab := 'temp_0407@dblink'; ----这是一个远程表。
v_sql long; 
 
v_sql:='insert into tmp_local
select * from ''
[解决办法]
iv_temp_tab
[解决办法]
''';

 如果是动态的上面就不要写死!直接写成入参的形式
[解决办法]
execute immediate 'insert into tmp_local
select * from '
[解决办法]
iv_temp_tab;


正规系统不要动不动用dblink,自己做接口表或者程序接口同步数据,两边事务不一致会把自己玩死的,稍微大点数据量也会很惨。

热点排行