博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
重建同义词+oracle,oracle 创建同义词
阅读量:4955 次
发布时间:2019-06-12

本文共 1158 字,大约阅读时间需要 3 分钟。

大部分客户有自己的数据库服务器,来管理自己的一些关键数据。那如果我们的项目中需要用到这些数据,而客户又不允许把这些数据插入到我们的项目数据库服务器时怎么办?其中的一个解决办法就是在项目数据库服务器上创建基于客户关键数据服务器的某些表或是视图的同义词。这里我来介绍一下我在项目中做的基于远程服务器视图如何创建同义词的过程。

一、创建database link。两台不同的数据库服务器,从项目数据库服务器的一个用户读取客户关键数据的数据库服务器下的某个用户的数据,这个时候可以使用dblink。假设客户提供的数据库服务器信息如下:

而创建database link的语法为:

这时,先要配置本地服务。打开TNSNAMES.ORA Network Configuration File: D:\ORA\NETWORK\ADMIN\tnsnames.ora文件(根据自己的机器的情况而定),将

LIMSTQ =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.107.6.15)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = VGSM)

)

)

添加到此文件的后面(注意LIMSTQ前面不要留空格)。

然后,再创建dblink。而数据库参数global_name=true时,就要要求数据库链接名称跟远端客户数据库名称一样。我们必须先要确定一下。查看此参数的语句如下:

如果是ture,记得创建的dblink名和远程端的数据库一样,很幸运,我用的数据库参数global_name的value值是false耶。

数据库全局名称可以通过以下命令查出:

查询远端数据库里的表:

这时,我就创建了自己的databae link:create database link limstq.us.oracle.com connect to jlgl identified by jlgl using 'limstq';

二、创建同义词,很简单的哦。建立同义词的语法如下:

我所建立的同义词语法是:create synonym jl_gljs_tb_lims for JLGL_LIMS@limstq.us.oracle.com;

三、同义词创建成功后,就可以在项目数据库服务器上通过select jl_gljs_tb_lims来进行客户的关键数据的查找操作了。但如果可能的话,最好再建立一个视图,形式如下:create or replace view jl_gljs_limstq_vw as select * from jl_gljs_tb_lims;

这样,基于远程服务器视图的同义词创建过程就

转载地址:http://okyhp.baihongyu.com/

你可能感兴趣的文章
Infix to Postfix Expression
查看>>
SELECT LOCK IN SHARE MODE and FOR UPDATE
查看>>
Perl/Nagios – Can’t locate utils.pm in @INC
查看>>
目录导航「深入浅出ASP.NET Core系列」
查看>>
简易爬虫(爬取本地数据)
查看>>
python 进程间通信
查看>>
深拷贝 vs 浅拷贝 释放多次
查看>>
SONY VPCS138EC降级安装XP
查看>>
被放逐的皇后 金建云
查看>>
Javascript 有用参考函数
查看>>
点群的判别(三)
查看>>
GNSS 使用DFT算法 能量损耗仿真
查看>>
【转】Simulink模型架构指导
查看>>
MYSQL数据库的导出的几种方法
查看>>
SQL Server-5种常见的约束
查看>>
硬件之美
查看>>
[转载]java开发中的23种设计模式
查看>>
表格的拖拽功能
查看>>
函数的形参和实参
查看>>
文字过长 用 ... 表示 CSS实现单行、多行文本溢出显示省略号
查看>>