admin管理员组文章数量:1794759
sqlserver数据库某表定期删除功能实现
新建数据库BackDel,建立表Test(id,tm,v),类型随意。先建立任务每5分钟插入一条数据,再建立删除任务。
sqlserver 启动代理服务,打开管理其界面,新建作业,常规里面输入名称,选择类别,输入说明
转到步骤中,设定执行什么任务,新建步骤,步骤常规里面名称,选择T-Sql类型,选择数据库,在命令中输入sql语句
declare @tm datetime --定义tm select @tm=getdate() --查询时间 insert into Test values(@tm,1) --插入语句//@tm应该为values值
注:
自己在工作计划命令中测试的sql代码
declare @ti datetime //定义格式 --select @ti=getdate() Select @ti=CONVERT(varchar(100), GETDATE(), 20) //获取系统时间为年月日时分秒毫秒,关于时间格式转换本博客里有详细的文章 insert into tttt values(@ti,1)
insert into Test values(1,1) --适用于表内两列数据的插入,test代表表名字,(1,1)表示要插入的值
insert into Test(列1,列2,。。。。。) values(列1值,列2值,。。。。。) --指定列指定值,其他值null
转到计划中,计划什么时候运行,新建计划,输入名称,选择计划类型为重复执行,执行间隔为1天,每天频率为5分钟插入一条数据,点击确定
每5分钟插入一条数据的定时任务就建立,测试运行效果显示成功
建立删除任务,步骤同上面一样,sql语句不同而已
declare @tm datetime --select @tm=dateadd(month,-6,getdate()) //删除当前日期6个月之前的数据 select @tm=dateadd(day,-1,getdate()) //删除当前日期前一天的数据 delete from test where tm <= 1 //1相当于条件,只针对本例
delete from test where tm>=dateadd(month,-6,getdate())//删除表中6个月之前的数据
最终建立的任务如下图
版权声明:本文标题:sqlserver数据库某表定期删除功能实现 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686653729a90977.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论