EXPIREDATE = { date | @date_var }指定备份集到期和允许被重写的日期。如果将该日期作为变量 (@date_var) 提供,则可以将该日期指定为字符串常量 (@date_var = date)、字符串数据类型变量(ntext 或 text 数据类型除外)、smalldatetime 或者 datetime 变量,并且该日期必须符合已配置的系统 datetime 格式。RETAINDAYS = { days | @days_var }指定必须经过多少天才可以重写该备份媒体集。假如用变量 (@days_var) 指定,该变量必须为整型。=============================
这两个参数只是表明备份的数据多少天后会过期, 它的空间可以被重写, 并不是删除.

解决方案 »

  1.   

    在数据库维护计划生成的Job命令串中可以看到相应的语句,如:Del
      

  2.   

    这是偶用的方法:
    --自动删除三天前的备份
    declare @data_3ago nvarchar(50)
    declare @cmd varchar(50)
    set @data_3ago ='e:\data\'+convert(varchar(10),getdate()-3,112) 
    set @cmd = 'del '+ @data_3ago 
    exec master..xp_cmdshell @cmd 
    --自动备份
    go--中间加一个go 
    declare @data nvarchar(50) 
    set @data='e:\data\'+convert(varchar(10),getdate(),112) 
    BACKUP DATABASE job TO DISK = @data
    with init
      

  3.   

    感谢roy_88,方法还是可行的感谢各位捧场
      

  4.   

    可以在步骤中调用存储过程来实现,我以前写过,效果很好,再也不用担心文件太多浪费硬盘空间了。
    附上详细操作地址:
    http://www.isouji.cn/Article.aspx?articleId=5