您的位置:首页 > 数据库 > Oracle

oracle dblink

2015-01-17 20:37 204 查看
1.将远程的数据库数据提取到本地使用dblink(本地的数据库表要和远程的数据库字段基本对应)

2.先对本地用户赋予权限

grant create database link to HBQS;

grant create public database link to HBQS;

3.创建dblink

create public database link DBL_NET

  connect to CS identified by cs  using 'ORACLEDB';

这个'ORACLEDB'对应oracle里面tnsnames.ora文件里面的数据库服务名(cs对应远程数据库的账号和密码)

ORACLEDB =

 (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = ICSS-PC)(PORT = 1521))

   )

   (CONNECT_DATA =

   (SERVER = DEDICATED)

     (SERVICE_NAME = oracleDB)

   )

 )

4.test

select * from kb14@DBL_NET

当然插入数据可以这样

INSERT INTO KB14

           SELECT akb020,   --定点医疗机构编号

                   aae002,   --结算期

                 --  akb110,   --统筹扣款金额

                 --  akb111,   --大额扣款金额

                 --  akb112,   --帐户扣款金额

                 --  akb113,   --离休扣款金额

                   aae013,   --扣款原因--违规事项

                   akb114,   --扣款编号

                   aae011,   --经办人--审核人

                   aae036,   --经办时间--登记日期

                 --  akb115,   --门诊统筹扣款

                 --  akb116,   --工伤扣款金额

                 --  akb117,   --生育扣款金额

                  -- akb118,   --居民住院统筹扣款金额

                 --  akb119,   --居民大额扣款金额

                   --akb120,   --居民帐户扣款金额

                   --akb121,   --居民门诊统筹扣款

                   akc803,   --参保地统筹区编号

                   akc801,   --就医地统筹区编号

                   aae100,   --有效标志

                   aae037,   --扣除时间

                   akc076,   --月结标志

                   aae140,   --险种

                   aac001,   --个人编号

                   akc020,   --社保卡号

                   aac003,   --姓名

                   aac004,   --性别

                   akb127,   --处理结果

                   akb128,   --扣除门诊

                   akb129,   --扣除住院

                   akb130,   --罚款金额

                   aae012,   --发生日期

                   aae017,   --审批人

                   aac002,   --身份证号

                   baz061,   --社保卡SID

                   akc021,   --人员类别

                   --akb131,   --处理结果(个人)

                   --akb132,   --追回门诊

                   --akb133,   --追回住院

                   --akb134,   --罚款金额

                   akb135,   --处理标志1=个人,2=机构

                   --akb136,   --个人所属

                   AKC300,AKC190,AAE072,ACCCHE_MON,null,SYSDATE FROM
KB14@DBL_NET A WHERE

                              NOT EXISTS (SELECT 1 FROM KB14 WHERE AAE002 = A.AAE002 AND AKB020 = A.AKB020 AND AKB114 = A.AKB114)

                              AND AAE002>='201412';

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle dblink