我在一个用户A下的数据表中有大量的记录,我想另外建立一个用户B,在用户B下建立相同的表结构,
然后将用户A中的数据依据日期转移部分记录到用户B的表中。
一般应该怎么做比较简便呢?请高手指教!
如果能提供一些代码作为参考最好!

解决方案 »

  1.   

    写一个存储过程,然后做一个scheduler job,定期自动由数据库转移数据例如表名为testtb,日期字段为coldata在B下建立存储过程
    CREATE OR REPLACE PROCEDURE refresh_testtb
    AS
    BEGIN
      INSERT INTO testtb SELECT * FROM a.testdb
       WHERE coldate = TRUNC(SYSDATE);
      COMMIT;
    END;
    /建立scheduler job的语句为:BEGIN
      dbms_scheduler.create_job(
           job_name => 'refresh_testdb_job',
           job_type => 'STORED_PROCEDURE',
           job_action => 'REFRESH_TESTDB',
           start_date => SYSDATE,
           repeat_interval => 'FREQ=DAILY;INTERVAL=1';
           enabled => TRUE);
    END;
    /