首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

oracle2个用户其间查询数据

2013-01-26 
oracle2个用户之间查询数据例如在oracle中有2个用户sysdb、hellodb 在sysdb下面有表hello在hellodb中有baby

oracle2个用户之间查询数据
例如在oracle中有2个用户sysdb、hellodb 在sysdb下面有表hello  在hellodb中有baby表
现在我想在oracle用户sysdb中使用hellodb用户的表baby的数据
那么怎么查询呢
select * from baby@link_hellodb

====================================

一般都会用imp exp 备份和导入数据库  但是有些时候 需要比较灵活的从两个数据库之间取数据 我这里用到的是oralc的dblink方式。



首先监听器tnsnames.ora这个文件能连接到远程要创建dblink的数据库。


-- 创建dblink   MANAGER为远程数据库的用户名 password 为远程数据库的密码, orcl为监听器连好的链接名称



Sql代码 
1.create database link DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM  
2.  connect to MANAGER  identified by  password     
3.  using 'orcl'; 
create database link DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM
  connect to MANAGER  identified by  password  
  using 'orcl'; 


这样就可以连接到 orcl数据库 灵活的取每一张表的数据了





--两个数据库都存在 tb_demo表  这是本表插入
--查询数据 sql和本地一样了  只是后面加个@DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM  就等于是dblink连好的远程数据库了

Sql代码 
1.INSERT INTO tb_demo  
2.              SELECT * FROM tb_demo@DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM  
3.              where iyear=2011  
4.              and imonth=8  and flag=0 

热点排行