学习是一种信仰。
分类: Oracle
2013-05-13 20:15:51
概述:
物理上存放于网络的多个ORACLE数据库,逻辑上可以看成一个单一的大型数据库,用户可以通过网络对异地数据库中的数据进行存取,而服务器之间的协同处理对于工作站用户及应用程序而言是完全透明的,开发人员无需关心网络的链接细节、数据在网络节点中的具体分布情况和服务器间的协调工作过程。
数据库之间的链接建立在DATABASE LINK上。
要创建一个DATABASE LINK,必须首先在建立链接的数据库上设置链接字符串,即配置一个远程数据库的本地网络服务名。
创建语法:
CREATE DATABASE LINK TEST
CONNECT TO USERNAME IDENTIFIED BY PASSWORD
USING 'CONNECT_STRING';
解释:
TEST是数据库连接串的名字。以后就通过这个名字来进行调用远程数据库的内容。
USERNAME是用来连接到远程数据库的合法Oracle用户名。
PASSWORD为该用户连接到Oracle时候的合法密码。
CONNECT_STRING为该Oracle数据库所在的主机上的tnsnames.ora文件里边定义的数据库连接串(SID)。
使用方法:
SELECT COUNT(*) FROM WHERE WHERE_CLAUSE;//
查阅远程数据库的内容。
UPDATE SET SO_NBR=NEW_SO_NBR WHERE WHERE_CLAUSE;//
修改远程数据库的内容。
在实际使用过程中,还可以通过为这个远程表建立一个同义词来进一步增加透明性,使该数据库连接串对于程序和开发人员来讲完全透明。
CREATE SYNONYM TABLE_NAME FOR ;
例子:
在PIS_PRODUCT中创建数据库链接:
CREATE DATABASE LINK "QUERY"
CONNECT TO "PIS_QUERY" IDENTIFIED BY VALUES '053197ABD21C6A6F67768140255D854CF1'
USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = campost)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))';
在PIS_PRODUCT中创建同义词:
CREATE OR REPLACE SYNONYM "PIS_PRODUCT"."SY_CSM_BILL" FOR ";