建立DB-LINK和建立视图

在系统数据通信间经常会有数据库的数据直接引用,使用视图VIEW的方式实现。视图调用通常会有两种情况,一种是同一数据库的视图,一种是跨数据库的视图。

在同一数据库地址不同用户下,不过不同的用户视图调用需要进行授权,不同用户的视图建立代码如下:

create or replace view v_tyqx_dwjd as
select DWJDUUID,BM,MC,DWLX,PX,CXM,SJDW,SFYX from T_TYQX_DWJD;

 

然后进行授权:

grant select on v_tyqx_dwjd to test1;

然后登陆test1用户,建立视图

create or replace view t_bd_dw as
select DWJDUUID,dwlx,mc,bm,sjdw,sfyx,cxm,px from V_TYQX_DWJD;

 以上是同一数据库下的视图建立,另一种是跨数据库的视图建立,首先需要建立dblink,

create /* public */ database link dblink1  connect to dbusername identified by dbpassword  
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';

查询数据:

select xxx FROM 表名@dblink服务器; 

或者建立视图

create or replace view 视图名 as (select 字段 from 用户.表名@dblink1);  

建立同义词:

create or replace synonym 同义词名 for 表名;  
create or replace synonym 同义词名 for 用户.表名;  
create or replace synonym 同义词名 for 表名@数据库链接名;  
drop synonym 同义词名;  

删除dblink如下:

drop /* public */ database link dblink1;  

猜你喜欢

转载自blog.csdn.net/alinshen/article/details/79672440