表: Table
字段
id,FYear,FMonth,FDay(id,年,月,日)我想写一个存储过程,每天0点的时候删除表中昨天所有纪录,请问是如何写的?谢谢!

解决方案 »

  1.   

    只是一句删除语句,不用写存储过程都可以办到~
    create proc sp_delete
    as 
    begin
    delete from table where 日=日-1
    end执行
    exec sp_delete然后新建作业,把执行语句放到作业执行计划里~
      

  2.   

    企业管理器
    --管理
    --SQL Server代理
    --右键作业
    --新建作业
    --"常规"项中输入作业名称
    --"步骤"项
    --新建
    --"步骤名"中输入步骤名
    --"类型"中选择"Transact-SQL 脚本(TSQL)"
    --"数据库"选择执行命令的数据库
    --"命令"中输入要执行的语句:
    --确定
    --"调度"项
    --新建调度
    --"名称"中输入调度名称
    --"调度类型"中选择你的作业执行安排
    --如果选择"反复出现"
    --点"更改"来设置你的时间安排
    然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行设置方法:
    我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定.--作业主要是可以定时完成某项任务.
      

  3.   

    delete from table where 日=日-1
    这样只能得到某个固定时间点的
    所以要用一个时间段来表示
      

  4.   

    delete from table where 日=datepart(day,getdate())-1