oracle 表的访问次数,Oracle访问多个数据库

我正在使用Oracle SQL Developer 4.02.15.21版本.

我需要编写一个访问多个数据库的查询.我要做的就是获取每个数据库中“ TableX”中存在的所有ID的列表(这些数据库中的每个数据库中都有一个Table1实例,但是具有不同的值),并将所有结果合并到一起一个大清单.

我的问题来自访问4个以上的数据库-我收到此错误:ORA-02020:使用的数据库链接过多.我无法更改INIT.ORA文件的open_links最大限制.

因此,我尝试动态打开/关闭这些链接:

SELECT Local.PUID FROM TableX Local

UNION ALL

----

SELECT Xdb1.PUID FROM TableX@db1 Xdb1;

ALTER SESSION CLOSE DATABASE LINK db1

UNION ALL

----

SELECT Xdb2.PUID FROM TableX@db2 Xdb2;

ALTER SESSION CLOSE DATABASE LINK db2

UNION ALL

----

SELECT Xdb3.PUID FROM TableX@db3 Xdb3;

ALTER SESSION CLOSE DATABASE LINK db3

UNION ALL

----

SELECT Xdb4.PUID FROM TableX@db4 Xdb4;

ALTER SESSION CLOSE DATABASE LINK db4

UNION ALL

----

SELECT Xdb5.PUID FROM TableX@db5 Xdb5;

ALTER SESSION CLOSE DATABASE LINK db5

但是,这会产生“ ORA-02081:数据库链接未打开”.最后关闭哪个数据库.

有人可以建议上述方法的替代方案或调整方案吗?

如果可能,请提供少量建议,并提供语法正确的SQL.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值