Sure it does, here is an example from the MSDN help
documentation:
Public Sub RunOleDbTransaction(myConnString As String)
Dim myConnection As New OleDbConnection(myConnString)
myConnection.Open()
Dim myCommand As OleDbCommand =
myConnection.CreateCommand()
Dim myTrans As OleDbTransaction
' Start a local transaction
myTrans = myConnection.BeginTransaction
(IsolationLevel.ReadCommitted)
' Assign transaction object for a pending local
transaction
myCommand.Connection = myConnection
myCommand.Transaction = myTrans
Try
myCommand.CommandText = "Insert into Region
(RegionID, RegionDescription) VALUES (100, 'Description')"
myCommand.ExecuteNonQuery()
myCommand.CommandText = "Insert into Region
(RegionID, RegionDescription) VALUES (101, 'Description')"
myCommand.ExecuteNonQuery()
myTrans.Commit()
Console.WriteLine("Both records are written to
database.")
Catch e As Exception
Try
myTrans.Rollback()
Catch ex As OleDbException
If Not myTrans.Connection Is Nothing Then
Console.WriteLine("An exception of type " &
ex.GetType().ToString() & _
" was encountered while
attempting to roll back the transaction.")
End If
End Try
Console.WriteLine("An exception of type " & e.GetType
().ToString() & _
"was encountered while inserting the
data.")
Console.WriteLine("Neither record was written to
database.")
Finally
myConnection.Close()
End Try
End Sub
Hope this helps.
Bart A. Robinson, MCP