oracle数据库中dblink使用,跨数据库查询和操作_oracledblink使用
oracle数据库中dblink使用,跨数据库查询和操作由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“oracledblink使用”。
要求:实现在本地数据库向远程数据库进程操作。
(注:本地数据库IP为10.56.7.26;远程数据库IP为233.215.219.8)
一、首先配置本地数据库的tnsnames.ora文件。具体操作如下 1.在10.56.7.26数据库安装文件中,找到$ORACLE_HOME/network/admin/tnsnames.ora文件,末尾添加
MEDIADBLINK =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 233.215.219.8)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))
2.登录到10.56.7.26数据库,创建database link,这里需要使用sysdba的角色登录,进行权限分配方可创建
执行如下sql语句:
create public database link MEDIADB;
connect to smsuser identified by zonefree2better;
using 'MEDIADBLINK';创建完后使用,检查是否成功:
select owner,object_name from dba_objects where object_type='DATABASE LINK';
3.在10.56.7.26中创建触发器 触发器中插入远程数据表sql: create or replace trigger t_t_test after insert on t_sta_bill for each row DECLARE--local variables here BEGIN--操作远程数据表
INSERT INTO t_test@MEDIADB(USERID,USERNAME,PASSWORD)VALUES(:NEW.USERID,:NEW.USERNAME,:NEW.PASSWORD);END t_t_test;
二、同机器上的不同用户数据库 一台机器上的不同用户,可以使用
SELECT h2.A.* FROM SSH2.A, orcl.A WHERE h2.A.USER_ID = orcl.A.USER_ID h2、orcl为用户,A为数据表
三、查看远程数据库中的表,即在表明后面加上dblink的名字即可完成.更新和删除操作类似
例如:select * from t_sta_bill@MEDIADB;http://mailsongfang.iteye.com/blog/691434