Oracle DBLINK 导数据

有些时候 需要比较灵活的从两个数据库之间取数据 可以采用 oralc 的 dblink 方式。

 

create public database link DBLINK_CRS_***4
  connect to username*** identified by password***
  using '(DESCRIPTION =
            (ADDRESS_LIST =
              (ADDRESS = (PROTOCOL = TCP)(HOST = ***.**.**.***)(PORT = 1521))
            )
            (CONNECT_DATA =
            (SERVICE_NAME=******)
            )
          )';

 

 

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

 

 

--两个数据库都存在 tb_demo表  这是本表插入
--查询数据 sql和本地一样了  只是后面加个 DBLINK_CRS_***4  就等于是dblink连好的远程数据库了

 

 

INSERT INTO tb_demo
              SELECT * FROM tb_demo@DBLINK_CRS_***4
              where iyear=2011
              and imonth=8  and flag=0

 

 

目前导出据的SQL , 由于字段不同, 那么,选择字段, ID  需要使用SEQUENCE生成。

 

 

insert into FLIGHT_****_****_**** (
BIG_******_ID, 
BIG_******_ID, 
FLI***HT_****_ID, 
CREATOR, 
CREATE_TIME)
SELECT seq_FLIGHT_***_****_****.Nextval,
big_****_****_no, aero_****_no, 10000, SYSDATE FROM BIG_SMALL_****_*****@DBLINK_ereadye

 

 

 

 

你可能感兴趣的:(oracle)