小弟想做数据备份。就是把三个月前的数据导入另一张结构一样一样的表中。请问如何做??谢谢
private String newinsert="INSERT INTO RECORD SELECT CUSSENT.* FROM CUSSENT WHERE ADDDATE<=TO_DATE(?,'yyyy-mm-dd hh24:mi:ss')";

private String newdelete="DELETE FROM CUSSENT WHERE ADDDATE<=TO_DATE(?,'yyyy-mm-dd hh24:mi:ss');";

这两条sql语句在Oracle中可以执行。可是用jdbc连接时不行??不知道有朋友知道为什么吗?

解决方案 »

  1.   

    http://blog.csdn.net/snowy_howe/archive/2007/09/04/1771848.aspx
    也许对你有帮助。
      

  2.   

    楼主没必要用insert,太慢,教你一招:
    1.备份三个月前的数据
    create table table_backup as
    select * from table WHERE ADDDATE<TO_DATE('2007-06-01','yyyy-mm-dd')";
    2.将需要保留的数据保存到临时表
    create table table_temp as
    select * from table WHERE ADDDATE>=TO_DATE('2007-06-01','yyyy-mm-dd')";
    3.清空正式表(注意一定要做好备份,否则用truncate不可回滚)
    truncate table table_name;
    4.将临时表数据导入
    insert into table_name
    select * from table_temp;以上是大数据量的做法,楼主参考一下。
    我的博客:
    http://blog.csdn.net/kinglht