If Not (_DBTrans Is Nothing) Then
_DBCmd.Transaction = _DBTrans
End If
_DBCmd.ExecuteNonQuery()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub BeginTransaction() Implements DBInterface.BeginTransaction
_DBTrans = _DBConn.BeginTransaction()
End Sub
Public Sub Rollback() Implements DBInterface.Rollback
If Not (_DBTrans Is Nothing) Then
_DBTrans.Rollback()
_DBConn.Close()
_DBTrans = Nothing
End If
End Sub
Public Sub Commit() Implements DBInterface.Commit
If Not (_DBTrans Is Nothing) Then
_DBTrans.Commit()
_DBConn.Close()
_DBTrans = Nothing
End If
End Sub
End Class
Public Class DBSqlServer
Implements DBInterface
Dim _DBConn As SqlClient.SqlConnection
Dim _Adapter As SqlClient.SqlDataAdapter
Dim _DBCmd As SqlClient.SqlCommand
Dim _DBTrans As SqlClient.SqlTransaction
'构造函数
Public Sub New(ByVal strConn As String)
_DBConn = New SqlClient.SqlConnection(strConn)
_DBConn.Open()
_DBTrans = Nothing
End Sub
'打开连接
Private Sub Open()
If Not (_DBConn Is Nothing) Then
If _DBConn.State <> ConnectionState.Open Then
_DBConn.Open()
End If
End If
End Sub
'用于执行INSERT,UPDATE,DELETE语句
Public Sub RunSql(ByVal sql As String) Implements DBInterface.RunSql
If Not (_DBTrans Is Nothing) Then
_DBCmd.Transaction = _DBTrans
End If
_DBCmd.ExecuteNonQuery()
Catch ex As Exception
Throw ex
End Try
End Sub
Public Sub Close() Implements DBInterface.Close
If Not (_DBConn Is Nothing) Then
_DBConn.Close()
_DBConn = Nothing
End If
End Sub
Public Sub BeginTransaction() Implements DBInterface.BeginTransaction
_DBTrans = _DBConn.BeginTransaction()
End Sub
Public Sub Rollback() Implements DBInterface.Rollback
If Not (_DBTrans Is Nothing) Then
_DBTrans.Rollback()
_DBConn.Close()
_DBTrans = Nothing
End If
End Sub
Public Sub Commit() Implements DBInterface.Commit
If Not (_DBTrans Is Nothing) Then
_DBTrans.Commit()
_DBConn.Close()
_DBTrans = Nothing
End If
End Sub