MS SQL中的延遲執行操作--WAITFOR




WAITFOR
指定觸發語句塊、存儲過程或事務執行的時間、時間間隔或事件。

語法
WAITFOR { DELAY 'time' | TIME 'time' }

參數
DELAY

指示 Microsoft® SQL Server™ 一直等到指定的時間過去,最長可達 24 小時。

'time'

要等待的時間。可以按 datetime 數據可接受的格式指定 time,也可以用局部變量指定此參數。不能指定日期。因此,在 datetime 值中不允許有日期部分。

TIME

指示 SQL Server 等待到指定時間。

註釋
執行 WAITFOR 語句後,在到達指定的時間之前或指定的事件出現之前,將無法使用與 SQL Server 的連接。

若要查看活動的進程和正在等待的進程,請使用 sp_who。


例1:在sql語句中想要延遲10秒執行

WAIFOR   DELAY  00:00:10            --hh:mi:ss      hh:小時   mi:分鐘    ss:秒

SELECT '需要執行的操作'                --可以執行 存儲過程、函數、update、insert、delete 語句


例2:在某個時間點執行

WAITFOR   TIME  00:30:00

SELECT '在0點30分執行的操作'     --可以執行 存儲過程、函數、update、insert、delete 語句


例3:每隔10分鐘執行一次操作

while(1=1)
begin
WAITFOR DELAY '0:0:3'

select '每隔10分鐘執行一次'      --可以執行 存儲過程、函數、update、insert、delete 語句
end

注意:例3 的SELECT 內容不會顯示出來,但是是執行的。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章