Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Vonatkozik a következőkre:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analitikai Platform System (PDW)
SQL adatbázis a Microsoft Fabric-ben
Megadja, hány milliszekundumot vár egy állítás a zár feloldására.
Transact-SQL szintaxis konvenciók
Szemantika
SET LOCK_TIMEOUT timeout_period
Arguments
timeout_period
Az a milliszekundum, ami eltelik a Microsoft SQL Server zárolási hibája előtt. Egy -1 (alapértelmezett) érték azt jelzi, hogy nincs időkorlát (azaz örökké várni).
Ha egy zárra való várakozás meghaladja az időkorlátot, hiba jelenik meg. A 0 érték azt jelenti, hogy egyáltalán nem várunk, és azonnal visszaküldünk egy üzenetet, amint zárolással találkozunk.
Megjegyzések
A kapcsolat elején ennek a beállításnak -1 értéke van. Miután megváltoztatták, az új beállítás a kapcsolat hátralévő részében is érvényben marad.
A SET LOCK_TIMEOUT beállítása végrehajtási vagy futási időre van beállítva, nem parze-időben.
A READPAST zárolási tipp alternatívát kínál ehhez a SET opcióhoz.
A CREATE DATABASE, ALTER DATABASE és DROP DATABASE utasítások nem tisztelik a SET LOCK_TIMEOUT beállítást.
Permissions
A nyilvános szerepkör tagságát igényli.
Példák
V: Állítsuk be a zár időkorlátját 1800 milliszekundumra
A következő példa a zárolás időkorlátját milliszekundumokra 1800 állítja be.
SET LOCK_TIMEOUT 1800;
GO
Példák: Azure Synapse Analytics and Analytics Platform System (PDW)
B. Állítsd be a zár időkorlátot, hogy örökké várjon a zár feloldására.
A következő példa a zár időkorlátját úgy állítja be, hogy örökre várjon, és soha ne járjon le. Ez az alapértelmezett viselkedés, amely már minden kapcsolat elején be van állítva.
SET LOCK_TIMEOUT -1;
A következő példa a zárolás időkorlátját milliszekundumokra 1800 állítja be. Ebben a kiadásban az Azure Synapse Analytics sikeresen elemzi a kijelentést, de figyelmen kívül hagyja a 1800 értéket, és továbbra is az alapértelmezett viselkedést használja.
SET LOCK_TIMEOUT 1800;