要求:每周五备份数据库中table1,table2到对应的历史表table1_h,table2_h,且只备份上周五前的一周数据,请问在SQL SERVER如何做?

解决方案 »

  1.   

    如果table1,table2表有记录时间字段,可以这样:
    1.写一个存储过程Proc1,Proc1实现如下功能,将数据备份到对应的历史表table1_h,table2_h
      大致可以这样写:
      insert into table1_h select * from table1 where 时间>(上周五-7天) and 时间<(上周五)
    2.建一个JOB,每周五执行一次Proc1
      

  2.   

    用作业可以实现你的要求。
    -------------------
    2007中国互联网最具投资价值100强网站评选投票结果---
    谢谢能帮我投一下票,帮办网跟圈地网,各投十票。谢谢你们朋友。
    圈地网,帮办网各十票,再次谢谢
    http://vote.techcn.com.cn/2007/wiclc/?do=viw&act=voteresult 
    最好能一天投一次,不过我知道这对你们来说难度太大的,我也只能希望你们可以帮我。
      

  3.   

    不执行?那作业执行成功还是失败?通过作业执行的历史记录看看问题在哪里作业调用存储过程,就在步骤种,选择相应的数据库,然后再命令中直接写exec 存储过程名 就可以了
      

  4.   

    在编辑作业步骤中:
    步骤名:test1
    类型:Transact SQL脚本
    数据库:testdb
    命令:exec backdata在调度:
    设置每天执行一次结果:显示已经成功执行;但是数据库表没改变;单独执行 存储过程 是可以的