Server.EnumLocks 方法
Enumerates a list of current locks held on the instance of SQL Server.
命名空間: Microsoft.SqlServer.Management.Smo
組件: Microsoft.SqlServer.Smo (在 Microsoft.SqlServer.Smo.dll 中)
語法
'宣告
Public Function EnumLocks As DataTable
'用途
Dim instance As Server
Dim returnValue As DataTable
returnValue = instance.EnumLocks()
public DataTable EnumLocks()
public:
DataTable^ EnumLocks()
member EnumLocks : unit -> DataTable
public function EnumLocks() : DataTable
傳回值
型別:System.Data.DataTable
A DataTable system object value that contains a list of current locks held by the specified process on the instance of SQL Server. The table describes the different columns of the returned DataTable.
Column |
Data type |
Description |
---|---|---|
RequestorSpid |
The SQL Server process ID that uniquely identifies the process requesting the lock. |
|
LockType |
The type of lock. See req_mode in sys.syslockinfo (Transact-SQL). |
|
Database |
The name of the database that contains the lock. |
|
Schema |
The schema of the locked resource. |
|
Table |
The table that contains the lock. |
|
Index |
The index that contains the lock. |
|
Status |
The status of the lock. 1 for Grant, 2 for Convert, and 3 for Wait. |
備註
Use this method to determine the locks that are currently held on the instance of SQL Server. The information that is returned can help you identify locking problems that might affect performance.
範例
C#
Server srv = new Server("(local)");
DataTable d = srv.EnumLocks();
foreach (DataRow r in d.Rows)
{
Console.WriteLine("============================================");
foreach(DataColumn c in d.Columns)
{
Console.WriteLine(c.ColumnName + " = " + r[c].ToString());
}
}
PowerShell
$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$d = $srv.EnumLocks()
foreach ($r in $d.Rows)
{
Write-Host "============================================"
Foreach ($c in $d.Columns)
{
Write-Host $c.ColumnName "=" $r[$c]
}
}
請參閱
參考
Microsoft.SqlServer.Management.Smo 命名空間