我想创建一个在一段时间过去之后从数据库中删除记录的作业.例如,我在新闻表时间戳中有一个字段,每个月,SQL查询就像针对我的数据库的计划作业一样运行,并删除时间戳是两个月大的消息.一般来说,我想删除2个月前的消息,而不是让我的桌子变成大桌子.我该如何做到这一点?
解决方法
你应该在sql中为
create a job
以下是通过sql代理创建作业的示例T-sql
以下是通过sql代理创建作业的示例T-sql
USE msdb ; GO EXEC dbo.sp_add_job @job_name = N'Weekly Sales Data Backup' ; GO EXEC sp_add_jobstep @job_name = N'Weekly Sales Data Backup',@step_name = N'Set database to read only',@subsystem = N'Tsql',@command = N'ALTER DATABASE SALES SET READ_ONLY',@retry_attempts = 5,@retry_interval = 5 ; GO EXEC dbo.sp_add_schedule @schedule_name = N'RunOnce',@freq_type = 1,@active_start_time = 233000 ; USE msdb ; GO EXEC sp_attach_schedule @job_name = N'Weekly Sales Data Backup',@schedule_name = N'RunOnce'; GO EXEC dbo.sp_add_jobserver @job_name = N'Weekly Sales Data Backup'; GO
原文地址:https://www.jb51.cc/mssql/76293.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。