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

Co dělá SQL Server s požadavkem na vypršení časového limitu?

Časový limit je vynucený ADO.NET. SQL Server nezná něco jako časový limit příkazu. Klient .NET odešle příkaz TDS "pozor". Toto chování můžete pozorovat pomocí SQL Profiler, protože má událost "pozornost".

Když SQL Server obdrží zrušení, zruší aktuálně spuštěný dotaz (stejně jako SSMS, když stisknete tlačítko stop). Dávku přeruší (stejně jako v SSMS). To znamená, že nelze spustit žádný catch kód. Spojení zůstane živé.

Podle mých zkušeností bude transakce okamžitě vrácena. Nemyslím si však, že je to zaručeno.

TL;DR:Časový limit v ADO.NET se chová stejně, jako kdybyste stiskli stop v SSMS (nebo zavolali SqlCommand.Cancel ).

Zde je odkaz:https://techcommunity.microsoft.com/t5/sql-server-support/how-it-works-attention-attention-or-should-i-say -cancel-the/ba-p/315511



  1. Jak nastavit barvu stavového řádku v SSMS pro různé instance serveru SQL - SQL Server / Výukový program TSQL, část 6

  2. IO Error:Dostal mínus jedna z volání čtení

  3. Seřadit určité hodnoty nahoru

  4. MySQL vybírá souřadnice v dosahu