sql >> Databáze >  >> RDS >> Sqlserver

Chyba 101 „Dotaz není povolen v aplikaci Waitfor“ na serveru SQL

Pokud používáte WAITFOR příkazu SQL Server a zobrazí se následující chyba, je to pravděpodobně proto, že jako argument poskytujete dotaz.

Msg 101, Level 15, State 1, Line 1
Query not allowed in Waitfor.

WAITFOR výpis nepřijímá dotazy na dobu „čekání na“. Přijímá pouze určitý čas nebo interval.

Ve skutečnosti přijímá RECEIVE prohlášení, ale to platí pouze pro zprávy Service Broker, takže pokud nepoužíváte zprávy Service Broker, výše uvedená chyba je zcela samovysvětlující.

Příklad

Zde je příklad nesprávného pokusu o použití dotazu v WAITFOR prohlášení.

WAITFOR (SELECT Delay From DelayTable);

Výsledek:

Msg 101, Level 15, State 1, Line 1
Query not allowed in Waitfor.

Chcete-li tento problém vyřešit, budete muset zadat skutečný čas nebo časové zpoždění.

Například to bude fungovat.

WAITFOR DELAY '00:00:10';

Výsledek:

Commands completed successfully.
Total execution time: 00:00:09.993

V tomto případě jsem použil časovou prodlevu, ale můžete použít i konkrétní čas.

WAITFOR TIME '10:55:40';

  1. Zjistěte po sobě jdoucí rozsahy dat pomocí SQL

  2. Jak používat schémata v Django?

  3. Jak přidat název do záhlaví sestavy v aplikaci Access

  4. Průvodce návrhem databáze pro hlasování a průzkum v MySQL