ASP.NET(vb.net) & Try Catch Exception The try-catch statement consists of a try block followed by one or more catch clauses, which specify handlers for different exceptions. When an exception is thrown, the common language runtime (CLR) looks for the catch statement that handles this exception. If the currently executing method does not contain such a catch block, the CLR looks at the method that called the current method, and so on up the call stack. If no catch block is found, then the CLR displays an unhandled exception message to the user and stops execution of the program.
ShotDev Focus:
- Try Catch Exception Statement
Try '*** Code & Command ***' Catch ex As Exception '*** Event Error ***' Finally '*** (Option) Event Completed Status ***' End Try
Example
Dim objConn As System.Data.OleDb.OleDbConnection Dim objCmd As System.Data.OleDb.OleDbCommand Dim strConnString,strSQL As String Dim Trans As OleDbTransaction strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("database/mydatabase.mdb")&";Jet OLEDB:Database Password=;" objConn = New System.Data.OleDb.OleDbConnection(strConnString) objConn.Open() '*** Start Transaction ***' Trans = objConn.BeginTransaction(IsolationLevel.ReadCommitted) Try '*** Query 1 ***' strSQL = "INSERT INTO customer (CustomerID,Name,Email,CountryCode,Budget,Used) " & _ "VALUES ('C005','Weerachai Nukitram','webmaster@shotdev.com','TH','2000000','1000000')" objCmd = New System.Data.OleDb.OleDbCommand() With objCmd .Connection = objConn .Transaction = Trans .CommandType = CommandType.Text .CommandText = strSQL End With objCmd.ExecuteNonQuery() '*** Query 2 ***' strSQL = "INSERT INTO customer (CustomerID,Name,Email,CountryCode,Budget,Used) " & _ "VALUES ('C005','Weerachai Nukitram','webmaster@shotdev.com','TH','2000000','1000000')" objCmd = New System.Data.OleDb.OleDbCommand() With objCmd .Connection = objConn .Transaction = Trans .CommandType = CommandType.Text .CommandText = strSQL End With objCmd.ExecuteNonQuery() Trans.Commit() '*** Commit Transaction ***' Me.lblText.Text = "Record is commit" Catch ex As Exception Trans.Rollback() '*** RollBack Transaction ***' Me.lblText.Text = "Record is rollback ("& ex.Message &")" End Try objCmd = Nothing objConn.Close() objConn = Nothing
.
.
.