我有一个表格需要每小时执行一些操作。为此,我创建了一个存储过程,但不知道如何每小时调用它。我知道有一些定时任务,但不知道如何使用。
是否存在某种服务可以持续运行,每秒钟执行一次,我可以在其中放置要执行的代码?
我有一个表格需要每小时执行一些操作。为此,我创建了一个存储过程,但不知道如何每小时调用它。我知道有一些定时任务,但不知道如何使用。
是否存在某种服务可以持续运行,每秒钟执行一次,我可以在其中放置要执行的代码?
在 SSMS 中导航到 SQL Server Agent-->Jobs 右键单击作业文件夹并选择新建作业
在弹出的对话框中为作业命名, 点击“步骤”,然后“新建”,您将看到如下对话框,选择正确的数据库并输入存储过程名称
之后点击“计划”,选择“新建”,您将看到下面这个图像,填写所需的所有信息,然后点击“确定”、“确定”,即可完成设置。
1) 使用SQL Server代理(打开MS Management Studio) 2)新建作业 3)添加步骤 4)选择Transact SQL 5)EXEC MyStroredProc 6)选择数据库 7)添加计划 8)每小时发生
添加通知以了解进程的执行情况(好或坏)。
在SQL Server代理的属性中检查所有自动重启选项是否已打开。
设置一个 SQL Server 代理作业,以每小时执行一次存储过程
DECLARE @result bit
--假设YourProc的输出是bit类型。Exec YourProc @spResult = @result OUTPUT
然后if(@result = 0) Begin DECLARE @subject nvarchar(max) = '通知!' DECLARE @body nvarchar(max) = '出了些问题...' DECLARE @to nvarchar(max) = 'WebMaster@Somewhere.com' EXEC msdb.dbo.sp_send_dbmail @recipients = @to, @subject = @subject, @body = @body; End
- Amir Chatrbahr