sql server的计划任务和消息队列

本文介绍了SQL Server中的计划任务实现,通过创建存储过程SP_Execute_PlanningTasks实现定时执行任务,并展示了WAITFOR语句的用法,包括延迟和指定时间执行。此外,还提及了消息队列的接收和生成消息的相关Transact-SQL语法,如RECEIVE和CREATE QUEUE,用于处理异步通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sql server的计划任务和消息队列

-- sql server也有【计划任务】,方案有很多,比如:
-- 要以1秒的间隔延迟后执行'somewhat job' ,可以使用以下代码:
CREATE PROCEDURE SP_Execute_PlanningTasks 
AS 
    WHILE 1=1
    BEGIN
     WAITFOR 
       DELAY '00:00:01'  -- 延迟1秒再执行下面的EXECUTE 'somewhat job'
       -- TIME  '23:50:00'  -- 每晚23:50:00执行下面的EXECUTE 'somewhat job'
     EXECUTE 'somewhat job'
     -- sp_execute ***
     -- sp_executesql ***
    END
END
-- 运行存储过程SP_Execute_PlanningTasks在每个SQL Server启动后立即执行:
exec sp_procoption N'SP_Execute_PlanningTasks', 'startup', 'on'



1、句法:

WAITFOR 
{
    DELAY 'time_to_pass' 
  | TIME 'time_to_execute' 
  | [ ( receive_statement ) | ( get_conversation_group_statement ) ] 
    [ , TIMEOUT timeout ]
}

WAITFOR (Transact-SQL) | Microsoft Docs

2、相关的消息队列

2.1、接收消息队列

RECEIVE (Transact-SQL) | Microsoft Docshttps://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2005/ms186963(v=sql.90)

2.2、产生服务的消息队列

CREATE QUEUE (Transact-SQL) | Microsoft Docs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

专讲冷知识

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值