dotConnect for PostgreSQL Documentation
Devart.Data.PostgreSql Namespace / PgSqlConnection Class / Rollback Method
Example

In This Topic
Rollback Method (PgSqlConnection)
In This Topic
Rolls back a transaction from a pending state.
Syntax
'Declaration
 
Public Sub Rollback() 
 
Example
The following example demonstrates how to use Commit and Rollback methods.
public void RunPgSqlTransaction(string myConnString)
{
  PgSqlConnection pgConnection = new PgSqlConnection(myConnString);
  pgConnection.Open();

  PgSqlCommand pgCommand = new PgSqlCommand();
  pgConnection.BeginTransaction();
  try
  {
    pgCommand.CommandText = "INSERT INTO Test.Dept(DeptNo, DName) Values(50, 'DEVELOPMENT')";
    pgCommand.ExecuteNonQuery();
    pgCommand.CommandText = "INSERT INTO Test.Dept(DeptNo, DName) Values(60, 'PRODUCTION')";
    pgCommand.ExecuteNonQuery();
    pgConnection.Commit();
    Console.WriteLine("Both records are written to database.");
  }
  catch(Exception e)
  {
    pgConnection.Rollback();
    Console.WriteLine(e.ToString());
    Console.WriteLine("Neither record was written to database.");
  }
  finally
  {
    pgConnection.Close();
  }
}
Public Sub RunPgSqlTransaction(myConnString As String)
  Dim pgConnection As New PgSqlConnection(myConnString)
  pgConnection.Open()

  Dim pgCommand As New PgSqlCommand()
  pgConnection.BeginTransaction()
  Try
    pgCommand.CommandText = "INSERT INTO Test.Dept(DeptNo, DName) Values(50, 'DEVELOPMENT')"
    pgCommand.ExecuteNonQuery()
    pgCommand.CommandText = "INSERT INTO Test.Dept(DeptNo, DName) Values(60, 'PRODUCTION')"
    pgCommand.ExecuteNonQuery()
    pgConnection.Commit()
    Console.WriteLine("Both records are written to database.")
  Catch e As Exception
    pgConnection.Rollback()
    Console.WriteLine(e.ToString())
    Console.WriteLine("Neither record was written to database.")
  Finally
    pgConnection.Close()
  End Try
End Sub
See Also