博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL Server 2008之WaitFor
阅读量:6984 次
发布时间:2019-06-27

本文共 1589 字,大约阅读时间需要 5 分钟。

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

看MSDN:

语法为:

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
以下示例在两小时的延迟后执行存储过程。注意:Delay最多不超过24小时
 
BEGIN
WAITFOR
DELAY
'
02:00
'
;
EXECUTE
sp_helpdb;
END
;
GO
以下示例显示如何对
WAITFOR DELAY 选项使用局部变量。将创建一个存储过程,该过程将等待可变的时间段,然后将经过的小时、分钟和秒数信息返回给用户。
 
USE
AdventureWorks2008R2;
GO
IF
OBJECT_ID
(
'
dbo.TimeDelay_hh_mm_ss
'
,
'
P
'
)
IS
NOT
NULL
DROP
PROCEDURE
dbo.TimeDelay_hh_mm_ss;
GO
CREATE
PROCEDURE
dbo.TimeDelay_hh_mm_ss
(
@DelayLength
char
(
8
)
=
'
00:00:00
'
)
AS
DECLARE
@ReturnInfo
varchar
(
255
)
IF
ISDATE
(
'
2000-01-01
'
+
@DelayLength
+
'
.000
'
)
=
0
BEGIN
SELECT
@ReturnInfo
=
'
Invalid time
'
+
@DelayLength
+
'
,hh:mm:ss, submitted.
'
;
--
This PRINT statement is for testing, not use in production.
PRINT
@ReturnInfo
RETURN
(
1
)
END
BEGIN
WAITFOR
DELAY
@DelayLength
SELECT
@ReturnInfo
=
'
A total time of
'
+
@DelayLength
+
'
,
hh:mm:ss, has elapsed! Your time is up.
'
--
This PRINT statement is for testing, not use in production.
PRINT
@ReturnInfo
;
END
;
GO
/*
This statement executes the dbo.TimeDelay_hh_mm_ss procedure.
*/
EXEC
TimeDelay_hh_mm_ss
'
00:00:10
'
;
GO

执行结果:
A total time of 00:00:10, in hh:mm:ss, has elapsed.Your time is up.
小结:这是一种轻巧的解决方案。当你没有权限指定job时,可以考虑用WaitFor语句。

 

【转】

 

 

 

 

 

 

转载地址:http://tcjpl.baihongyu.com/

你可能感兴趣的文章
Aptana Studio 3 汉化
查看>>
phonegap+jquerymobile开发android的心得(4)
查看>>
python 使用PyTesser--安装
查看>>
MAC 上使用pem秘钥 远程登录linux
查看>>
无需编译,1分钟安装Ubuntu官方构建的最新版Linux内核
查看>>
解压即用,Ubuntu上Nginx/Apache/PHP编译打包
查看>>
详解-斗鱼弹幕API-接入(斗鱼弹幕服务器第三方接入协议)
查看>>
table设置border没有空隙
查看>>
升级 Vim 7.4 On Ubuntu 13.10, 13.04, 12.04, Linux...
查看>>
Maven的setting.xml 配置详解
查看>>
Pycharm中autopep8设置
查看>>
Python3.7源码在windows(VS2015)下的编译和安装
查看>>
在Java中如何避免“!=null”式的判空语句?
查看>>
手动编译内核
查看>>
openshift client 命令 之 groups
查看>>
vsphere web client 加载不上本地镜像提示加载插件超时
查看>>
db2 之 入门实验
查看>>
开始Jquery的学习生涯
查看>>
手机测试项目时报INSTALL_FAILED_INSUFFICIENT_STORAGE
查看>>
10_css选择符类型1.html
查看>>