OleDbTransaction rollback

image_pdfimage_print


   


using System;
using System.Data;
using System.Data.OleDb;

public class Transact {    
 public static void Main () { 
   String connect = "Provider=Microsoft.JET.OLEDB.4.0;data source=.Employee.mdb";
   OleDbConnection con = new OleDbConnection(connect);
   con.Open();  
   Console.WriteLine("Made the connection to the database");
   OleDbCommand cmd = con.CreateCommand();

   OleDbTransaction trans = con.BeginTransaction();
   cmd.Transaction = trans;
   cmd.CommandText ="INSERT INTO Employee VALUES (09,'qwe','ewq',123)";
   cmd.ExecuteNonQuery();

   cmd.CommandText = "SELECT First_name FROM Employee";
   OleDbDataReader reader = cmd.ExecuteReader();

   while(reader.Read()) 
     Console.WriteLine("{0}",
               reader.GetString(0));
   reader.Close();

   trans.Rollback(); 
 
   cmd.CommandText = "SELECT First_name FROM Employee";
   reader = cmd.ExecuteReader();
   Console.WriteLine("Rolled back insert and update -- table unchanged");
   Console.WriteLine("First_name");
   while(reader.Read()) 
     Console.WriteLine("{0}",
               reader.GetString(0));
   reader.Close();


   con.Close();
 }
}