SqlSkull
SQL WAITFOR se používá na bloky provedení dávkové prohlášení, nadnárodní prohlášení nebo jakékoliv uložené procedury, dokud zadaný čas, nebo kdykoliv je dosaženo intervalu, nebo určitý prohlášení mění nebo vrací alespoň jeden řádek.
je velmi užitečné v takovém požadavku, když SQL skript musí čekat nějakou určitou dobu před provedením dalšího příkazu.
při provádění příkazu WAITFOR je transakce spuštěna a žádné další požadavky nemohou být spuštěny v rámci stejné transakce.
příkaz WAITFOR lze použít pouze s dotazem a nelze jej použít s kurzorem a pohledy.
tipy-včetně příkazu WAITFOR může zpomalit dokončení procesu SQL Server a může mít za následek zprávu o časovém limitu .
syntaxe
WAITFOR (DELAY HH:MM:SS OR TIME HH:MM:SS)
WAITFOR DELAY-slouží k pozastavení dotazu po určitou dobu. Čas před provedením dotazu. Chcete-li odložit provedení dotazu o jakýkoli zadaný časový interval.
WAITFOR TIME – slouží k pozastavení provádění dotazu, dokud není dosaženo zadaného času dne. Čas na provedení, konkrétní čas za den.
podívejme se na příklad WAITFOR se zpožděním a časem
WAITFOR DELAY
následující příkaz SQL běží po dokončení zpoždění 15 sekund.
SELECT GETDATE() as timethenWAITFOR DELAY '00:00:15'SELECT GETDATE() as timenow
Jak můžete vidět časový rozdíl mezi oběma prohlášení je 15 sec.
WAITFOR ČAS
S pomocí ČASOVÝCH možností, můžeme určit přesné budoucí čas dne.
následující příkaz SQL se spustí po uplynutí zadaného času.
DECLARE @waitfortime DATETIMESET @waitfortime = DATEADD(second,15,GETDATE())SELECT GETDATE() As timethenWAITFOR TIME @waitfortimeSELECT GETDATE() As timeNow
Jak můžete vidět časový rozdíl mezi oběma prohlášení je 15 sec.
787 celkový počet zobrazení, 6 názorů,
Leave a Reply