在数据库中创建定时任务[原创]
在SQL Server 2000中建立定时任务,处理时间超过一月的记录
做项目时客户要求,为了防止大量无用数据的存在,数据库的指定表中的数据记录需要定时清除大约一月之前的数据。在网上查了查资料,把问题解决了,感觉不错。总结如下:
这里不能用触发器,要用作业。
打开企业管理器,进入你服务器名下的“管理”,启动SQL Server代理。然后查看你服务器的属性,在“常规”中选中“自动启动SQL Server代理”。
接下来进入SQL Server代理下的“作业”,在右边点右键选“新建作业”。
在“常规”里,随便输入一个作业名(如:DeleteData),分类要选最后一项“数据库维护”。
在“步骤”里,点“新建步骤”,随便输入一个步骤名(如:Delete),数据库选择你要管理的数据库,命令里输入你删除记录的语句(如:Delete from Tab_Absent where ApplicationDate<(SELECT DateAdd(mm,-2,DATEADD(mm,DATEDIFF(mm,0,getdate()),0)))),也可以通过“打开”来装载T-SQL脚本,弄好后记得分析一下,没有问题再继续。在“高级”里将“成功操作时”改成“转到下一步”,“重试次数”和“重试间隔”可以根据情况设置,将“失败时的操作”改成“转到下一步”。
在“调度”里,点“新建调度”,随便输入一个调度名(如:Delete),点“更改”,“调度类型”选反复出现,“发生频率”选每月,其余的根据情况自己设置,然后点“确定”,再点“确定”,再点“确定”,配置就完成了。