通过Sql Server 作业实现定时任务
最近需要一个业务需求。一条数据的状态在指定时间更改状态并且要在另一张表中添加条数据。要实现这个需求有两种方式:一种方式是使用Windows服务来实现,另一种是通过Sql Server作业的方式来实现。下面演示一下通过Sql Server作业的方式来实现。
开启Sql Server 代理
使用Sql Server中的作业需要开启SQL Server 代理,并且需要设置为自动启动,否则你的作业不会被执行。
开启方法:win+R -->输入"services.msc" --> 找到 Sql Server 代理 并设置为自动。
新建作业
在SQL Server Managment管理软件,展开SQL Server代理,然后右键单击作业,选择新建作业,如下图所示
设置新建作业的名称以及说明
点击“新建作业”,然后在 “常规”选项卡,填写作业名称及说明,如下图所示
设置任务的执行步骤
选中“步骤”选项卡,点击“新建”按钮,如下图所示
上图中在填写步骤名称、选择数据库(也可以不选,但要命令中注明使用数据库)及要执行的sql语句(一般是存储过程或函数)。
还可以接着在新建步骤的对话框中的高级选项中做更多设置,如下图所示
这时“作业步骤”就创建好了,在步骤列表中可以看到刚才创建好的步骤记录。
设置执行计划
选中“计划”选项卡,点击“新建”按钮,如下图所示
在“新建作业计划”窗口,作业计划名称、计划类型,设置执行率,上图设置的是每隔一个小时执行一次。也可以设置的频率为每天执行一次。这个根据具体需求来定。
然后点击"确定"按钮,这时整个作业计划就完成了。