OleDbTransaction rollback


   


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();
 }
}
           
          


Use OleDbTransaction


   


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 = "UPDATE Employee SET Salary = 1342 "
                        + "WHERE ID > 1";
   cmd.ExecuteNonQuery();

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

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

   con.Close();
 }
}
           
          


Illustrates transaction processing


   


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();

   con.Close();
 }
}
           
          


Read query result from OleDbReader

   


using System;
using System.Data.OleDb;

public class ReadFromOleDb
{
  [STAThread]
  static void Main(string[] args)
  {
    String sConn = "provider=sqloledb;server=(local)SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI";
    
    String sSQL = "select id, firstname, lastname from Employee";

    OleDbConnection oConn = new OleDbConnection(sConn);
    oConn.Open();

    OleDbCommand oCmd = new OleDbCommand(sSQL, oConn);
    OleDbDataReader oReader = oCmd.ExecuteReader();

    int idxID = oReader.GetOrdinal("id");
    int idxFirstName = oReader.GetOrdinal("firstname");
    int idxLastName = oReader.GetOrdinal("lastname");

    while(oReader.Read()) {
      Console.WriteLine("{0} {1} {2}",
        oReader.GetValue(idxID),
        oReader.GetValue(idxFirstName),
        oReader.GetValue(idxLastName));
    }
  }
}


           
          


Format Data from OleDbDataReader

   


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

class OleDbProvider{
   static void Main(string[] args)  {
      String connString = "provider=sqloledb;server=(local)SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI";
    
    String sql = "select firstname, lastname from Employee";

      OleDbConnection conn = null;
      OleDbDataReader reader = null;

      try {
         conn = new OleDbConnection(connString);
         conn.Open();

         OleDbCommand cmd = new OleDbCommand(sql, conn);
         reader = cmd.ExecuteReader();
         Console.WriteLine("Querying database {0} with query {1}
"
                           , conn.Database
                           , cmd.CommandText);
         Console.WriteLine("First Name	Last Name
");

         while(reader.Read()){
            Console.WriteLine(
               "{0} | {1}" 
               , reader["FirstName"].ToString().PadLeft(10) 
               , reader[1].ToString().PadLeft(10)
               );
         }
      } catch (Exception e) {
         Console.WriteLine("Error: " + e);
      } finally {
         reader.Close();
         conn.Close();
      }
   }
}

           
          


Reference data in OleDbDataReader by column name

   

    using System;
    using System.Data.OleDb;

  class MapOleDbReader
  {
    static void Main(string[] args)
    {
        String sConn = "provider=sqloledb;server=(local)SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI";

        String sSQL = "select id, firstname, lastname from Employee";

      OleDbConnection oConn = new OleDbConnection(sConn);
      oConn.Open();

      OleDbCommand oCmd = new OleDbCommand(sSQL, oConn);
      OleDbDataReader oReader = oCmd.ExecuteReader();

      while(oReader.Read()) 
      {
        Console.WriteLine("{0} {1} {2}",
          oReader["id"],
          oReader["firstname"],
          oReader["lastname"]);
      }
    }
  }



           
          


Map database column name to OleDbDataReader

   



using System;
using System.Data.OleDb;

public class ReadFromOleDb
{
  [STAThread]
  static void Main(string[] args)
  {
    String sConn = "provider=sqloledb;server=(local)SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI";
    
    String sSQL = "select id, firstname, lastname from Employee";

    OleDbConnection oConn = new OleDbConnection(sConn);
    oConn.Open();

    OleDbCommand oCmd = new OleDbCommand(sSQL, oConn);
    OleDbDataReader oReader = oCmd.ExecuteReader();

    int idxID = oReader.GetOrdinal("id");
    int idxFirstName = oReader.GetOrdinal("firstname");
    int idxLastName = oReader.GetOrdinal("lastname");

    while(oReader.Read()) {
      Console.WriteLine("{0} {1} {2}",
        oReader.GetValue(idxID),
        oReader.GetValue(idxFirstName),
        oReader.GetValue(idxLastName));
    }
  }
}