加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

从远程Oracle服务器上同步复制数据到本地备份库

发布时间:2021-01-09 15:43:56 所属栏目:MySql教程 来源:网络整理
导读:以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 create or replace PROCEDURE "SYNC_DATA_FROM_DBLINK_DB" ASBEGIN DECLARE CURSOR c_TabNames IS SELECT TNAME FROM TAB; v_TabName c_TabNames%ROWTYPE; v_SQL VAR

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

create or replace PROCEDURE "SYNC_DATA_FROM_DBLINK_DB" AS
BEGIN
  DECLARE
  CURSOR c_TabNames IS
    SELECT TNAME FROM TAB;
  v_TabName c_TabNames%ROWTYPE;
  v_SQL VARCHAR2(500);
  v_rowcount NUMBER;
  v_rc NUMBER:=0;
  v_tab NUMBER :=0;
  BEGIN
    Dbms_Output.put_line(to_char(SYSDATE,'yy-mm-dd hh24:mi:ss')||' 开始从远程的TEST2实例导入表.');
    FOR v_TabName in c_TabNames LOOP
      v_SQL := 'DELETE '||v_TabName.TNAME;
      EXECUTE IMMEDIATE v_sql;
      v_sql := 'INSERT INTO '|| v_tabname.TNAME||' SELECT * FROM '|| v_tabname.TNAME||'@TEST2';
     EXECUTE IMMEDIATE v_sql;
     COMMIT;
      v_SQL :='SELECT COUNT(*) FROM '|| v_tabname.TNAME;
      EXECUTE IMMEDIATE v_sql INTO v_rowcount;
      v_tab := v_tab +1;
      v_rc := v_rc + v_rowcount;
     END LOOP;
     Dbms_Output.put_line(to_char(SYSDATE,'yy-mm-dd hh24:mi:ss')||' 导入完成,共导入表'||to_char(v_tab)||'张,总记录数'||to_char(v_rc)||'条记录。');
  END;
END SYNC_DATA_FROM_DBLINK_DB;  

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读