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.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
Lezárást enged egy alkalmazásforrásra.
Transact-SQL szintaxis konvenciók
Szemantika
sp_releaseapplock
[ [ @Resource = ] N'Resource' ]
[ , [ @LockOwner = ] 'LockOwner' ]
[ , [ @DbPrincipal = ] N'DbPrincipal' ]
[ ; ]
Arguments
[ @Resource = ] N'Resource'
Egy kliensalkalmazás által meghatározott zároló erőforrás neve.
@Resourcenvarchar(255), alapértelmezett értéke NULL.
@Resource bináris összehasonlítású, így kis- és kisméretre érzékeny, függetlenül a jelenlegi adatbázis összeállítási beállításaitól.
Az alkalmazásnak biztosítania kell, hogy az erőforrás egyedi legyen. A megadott név belső hashelésbe kerül egy értékbe, amely az SQL Server zárkezelőjében tárolható.
[ @LockOwner = ] 'LockOwner'
A zsilit tulajdonosa, ami a @LockOwner érték, amikor a zárat kérték.
@LockOwnera varchar(32), alapértelmezett értéke Transaction. Az érték is lehet Session. Ha a @LockOwner érték Transaction, akkor alapértelmezettnek vagy kifejezetten meghatározott módon végrehajtani sp_getapplock kell egy tranzakción belül.
[ @DbPrincipal = ] N'DbPrincipal'
Az a felhasználó, szerep vagy alkalmazásszerep, amely jogosultságokkal rendelkezik egy objektumra az adatbázisban.
@DbPrincipal a sysname, alapértelmezettként public. A függvény hívójának tagja kell lennie a database_principal, dbo vagy a db_owner fix adatbázis szerepének tagjának ahhoz, hogy a függvényt sikeresen hívhassa.
Kódértékek visszaadása
>= 0 (siker), vagy < 0 (kudarc).
| Érték | Result |
|---|---|
0 |
Lock sikeresen szabadon engedték. |
-999 |
Paraméter ellenőrzést vagy más hívási hibát jelez. |
Megjegyzések
Ha egy alkalmazás többször is hív sp_getapplock ugyanazt a zár erőforrást, sp_releaseapplock ugyanannyiszor kell meghívnia a zár feloldásához.
Ha a szerver bármilyen okból leáll, a zárak feloldódnak.
Permissions
A nyilvános szerepkör tagságát igényli.
Példák
A következő példa feloldja az adatbázisban lévő erőforrás aktuális tranzakciójához Form1AdventureWorks2025 tartozó zárat.
USE AdventureWorks2022;
GO
EXECUTE sp_getapplock
@DbPrincipal = 'dbo',
@Resource = 'Form1',
@LockMode = 'Shared';
EXECUTE sp_releaseapplock
@DbPrincipal = 'dbo',
@Resource = 'Form1';
GO