一个很急的问题,DBlink的使用

J2EE 码拜 10年前 (2015-05-10) 739次浏览 0个评论
 

请求大家一个很急的问题: 

   现在我有16个Oracle用户在同一个Oracle实例中,每个用户里面都有一张相同表结构的表,假如都是A表,现在我需要登录的时候进入主页面,要将这16个用户中的A表中数据全部读取出来  怎么实现?

好像是用DBlink,但是本人不是很懂!  求助中。。。比较急!

最好附上源码,谢谢了!
80分
同一个oracle实例,不需要dblink。

你只要把其他用户的A表的select权限给予你登录的这个用户。
然后用union all来合并各个表即可。比如:

连接数据库的用户是 B,其他15个用户是A1~A15则
A1~A15的A表的select权限 都给B,那么B连接进去之后,即可采用
select * from B.A  — 表示用户模式B下的A表
unoin all
select * from A1.A — 表示用户模式A1下的A表
unoin all
select * from A2.A
.
.
.
unoin all
select * from A15.A

来得到所有数据。

如果是在不同的实例,则需要建DBlink,建好dblink之后,查询方式为:

select * from A
unoin all
select * from A@db_lnkA1  — 这种方式下,不需要加用户模式,用户模式已包含在dblink定义中
unoin all
select * from A@db_lnkA2
.
.
.
unoin all
select * from A@db_lnkA15

20分
关注这个问题 

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明一个很急的问题,DBlink的使用
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!