We recommend using Visual Studio 2017

Database.GetTransactionCount Method

Gets the number of open transactions on the database.

Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

public int GetTransactionCount()

Return Value

Type: System.Int32
An Int32 value that specifies the number of open transactions on the database.

This method is useful when you change the snapshot isolation setting of the database to True, because the call can take a long time when there are long-running open transactions.


'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server

'Reference the AdventureWorks2008R2 database.
Dim db As Database
db = srv.Databases("AdventureWorks2008R2")

'Display the number of open transaction on the database.


$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2008R2")

Write-Host $db.GetTransactionCount()

Community Additions