一个比较复杂的问题,在 Sample1 数据库实例 有数据库 sam1 ,sam1 里有 table1 表 (此表没主键,但数据是唯一的;
在 Sample2 数据库实例 Sample2 ,Sample2 里有 数据库 exa1 有 table2 表(table2 有主键)
每天指定一个时间从 Sample1 实例的 sam1 库里的 table1 表新增加的数据里的提取某5个字段的数据,追加到 Sample2 实例里的 exa1 数据库 里的 table2 表的指定的某5个字段中,注意要确保 table2 中数据不能重复,寻求解决方法,谢谢

解决方案 »

  1.   

    数据库exa1 中建连接到sam1的DBLINK 然后写个.bat批处理文件 在数据库exa1所在的服务器上添加任务计划指定时间执行.bat文件 就Ok了
      

  2.   

    1.创建的dblink
    create database link (dblink名称)
      connect to (远程数据库下的用户名称) identified by (用户密码)
      using ((DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 远程数据库IP)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = 远程数据库服务名称)
        )
      ));
    2.创建.bat 文件内容
    sqlplus/nolog
    /
    conn 用户名/密码@服务名称
    /
    insert into table2 (五个字段) select  from table1@dblink名称;
    /
    commit;
    3.在数据库exa1所在的服务器上添加任务计划执行.bat文件
      

  3.   

    1.创建dblink..
    2.创建导数据的procedure..
    然后在sam1上建个job,定时执行上面写的procedure..
      

  4.   


    我想用的就是这个,用bat文件太复杂,不好弄
      

  5.   


    有用存储过程解决的方法吗?因为用 bat 文件做起来很麻烦