Database.EnumLocks Method ()
Enumerates a list of all current locks held on the database.
Assembly: Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)
Return Value
Type: System.Data.DataTableA DataTable object value that contains a list of locks held on the database and information about the type and location of the locks. The table describes the different columns of the returned DataTable.
Column | Data type | Description. |
---|---|---|
RequestorSpid | The system process ID value of the process that is holding a lock on a database resource. | |
LockType | The description of the type of lock. See the syslockinfo table for a description of different lock types. | |
Database | The name of the database on which the lock is held. | |
Table | The name of the table on which the lock is held. This field contains a value only if the lock is held on a table. | |
Index | The name of the index on which the lock is held. This field contains a value only if the lock is held on an index. | |
Status | The status of the lock, which can be one of the following: 1 = Granted. 2 = Converting. 3 = Waiting. |
The example runs a Server object enumeration method, but extracting the information from the T:System.DataTable object is the same for Database enumeration methods.
VB
PowerShell
$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)") $d = new-object System.Data.Datatable $d = $srv.EnumCollations Foreach ($r in $d.Rows) { Write-Host "============================================" Foreach ($c in $d.Columns) { Write-Host $c.ColumnName "=" $r[$c] } }