dblink实现不同用户之间的数据表访问

Posted 土豆Z120553

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dblink实现不同用户之间的数据表访问相关的知识,希望对你有一定的参考价值。

1、dblink

1、创建dblink,如果在用户A下创建dblink,名称为TEST_DBLINK; 去操作GCFR_33用户下的表数据等等,

那么在查询表数据的sql就要加上dblink了。如下是创建dblink的语句:

-- Drop existing database link 
drop public database link TEST_DBLINK;
-- Create database link 
create public database link TEST_DBLINK
connect to GCFR_33
using (DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
);

2、假如gcfr_33这个用户下有gcfr_t_vch这个表,但是A用户下没有,想要直接访问gcfr_t_vch,那么查询语句如下:

 select count(*) from [email protected]_DBLINK;

2、同义词synonym

1、创建同义词,对于上面的dblink而言,可以创建与之对应的同义词,这样在查询的时候就可以直接select 1 from 同义词就行了,sql语句如下:

create or replace synonym TEST_SYNONM
  for GCFR_T_VCH@TEST_DBLINK;

2、创建同义词之后再查询gcfr_t_vch表,就很简便了

select * from TEST_SYNONM;

先粗略描述,后续继续补充

 

以上是关于dblink实现不同用户之间的数据表访问的主要内容,如果未能解决你的问题,请参考以下文章

本地oracle里写了个存储过程,需要去取用别的服务器上sqlserver数据库里的数据,用dblink能否实现

同一个数据库下不同用户连接同一个数据库使用一个dblink

使用Oracle DBLink进行数据库之间对象的访问操作

Oracle透明网关访问MySQL数据库

mysql添加federated引擎实现dblink远程表访问

两台服务器不同oracle数据库使用dblink+merge实现数据同步