前言
这两天在公司做项目,负责了数据下发相关的工作,需要把其他数据库的数据到我们数据库中进行展示,其中需要用到dblink和Synonyms(同义词),现将创建的过程记录下来。
创建dblink
1.查看所有dblink
--可以查看有哪些dblink,但没有详情
SELECT * FROM dba_objects o where o.OBJECT_TYPE='DATABASE LINK'
--推荐使用,可以查看create的详情
SELECT * FROM DBA_DB_LINKS
2.创建dblink
2.1 方法一:pl/sql界面创建
2.1用语言创建
-- Create database link
create public database link DB_SYPT_KF
connect to DB_SYPT
using '(DESCRIPTION =(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =150.18.44.110)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = syptdb)))';
3.查询数据
select * FROM 表名@数据库用户名;
4.删除dblink
drop /* public */ database link dblink的名称;
创建Synonyms(同义词)
--同义词是数据库方案对象的一个别名,经常用于简化对象访问和提高对象访问的安全性。
--Oracle的同义词有两种类型:公有同义词与私有同义词。
--1:公有同义词由一个特殊的用户组Public所拥有。
--2:私有同义词是由创建他的用户所有。
--创建同义词的语法:
--当前用户下的表
Create [public] synonym 同义词名称 for 表名
Create [public] synonym 同义词名称 for [username.]objectName
--dblink的表
Create [public] synonym 同义词名称 for 表名@数据库链接名(dblink名称);
--删除同义词的语法:
Drop [public] synonym 同义词名称
--查询同义词
SELECT * FROM 同义词名称
--查看所有同义词:
select * from dba_synonyms