SQL高级编程之waitfor

在SQL Server 2005以上版本中,在一个增强的WaitFor命令,其作用可以和一个job相当。但使用更加简捷。

看MSDN:
http://msdn.microsoft.com/zh-cn/library/ms187331.aspx

语法为:

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

以下示例在晚上 10:20 (22:20) 执行存储过程 sp_update_job

USE msdb;
EXECUTE sp_add_job @job_name = 'TestJob';
BEGIN
    WAITFOR TIME '22:20';
    EXECUTE sp_update_job @job_name = 'TestJob',
        @new_name = 'UpdatedJob';
END;
GO
示例:
use StuDB
waitfor time '14:04'
select * from StuInfo

waitfor delay '00:00:02'
select * from StuInfo

 waitfor 可以延迟到某个时间点,也可以是多少(时间)后执行语句



posted @ 2018-01-10 20:20  小汐儿  阅读(273)  评论(0编辑  收藏  举报