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(); } } }
Database ADO.net
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)); } } }
Read value using OleDbDataReader
using System; using System.Data; using System.Data.OleDb; public class Prepare { 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 cmd2 = con.CreateCommand(); cmd2.CommandText = "SELECT First_name FROM Employee " + "WHERE ID > ?"; OleDbParameter p3 = new OleDbParameter(); cmd2.Parameters.Add(p3); p3.Value = new Decimal(0.0); OleDbDataReader reader = cmd2.ExecuteReader(); while(reader.Read()) Console.WriteLine("{0}", reader.GetString(0)); reader.Close(); con.Close(); } }
Execute complicated SQL query
using System; using System.Data; using System.Data.OleDb; public class ExtractInfo { 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 Sales database"); OleDbCommand cmd = con.CreateCommand(); cmd.CommandText = "SELECT DISTINCT CustomerName " + "FROM Customer, Item, Orders, OrderItem " + "WHERE Customer.CustomerID = Orders.CustomerID " + "AND Orders.OrderNumber = OrderItem.OrderNumber " + "AND OrderItem.ItemNumber = Item.ItemNumber " + "AND Description = 'computer'"; OleDbDataReader reader = cmd.ExecuteReader(); while(reader.Read()) Console.WriteLine(reader.GetString(0)); reader.Close(); con.Close(); } }
Read result set containing all columns
using System; using System.Data; using System.Data.OleDb; public class ExtractInfo { 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 Sales database"); OleDbCommand cmd = con.CreateCommand(); cmd.CommandText = "SELECT * FROM Employee"; OleDbDataReader reader = cmd.ExecuteReader(); Console.WriteLine(); Console.WriteLine("ID FirstName LastName Salary"); while (reader.Read()) Console.WriteLine("{0} {1} {2} {3}",reader.GetInt32(0),reader.GetString(1),reader.GetString(2), reader.GetDecimal(3)); reader.Close(); con.Close(); } }
Query more columns and read result set
using System; using System.Data; using System.Data.OleDb; public class ExtractInfo { 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 Sales database"); OleDbCommand cmd = con.CreateCommand(); cmd.CommandText = "SELECT First_Name, Last_Name FROM Employee ORDER BY First_Name"; OleDbDataReader reader = cmd.ExecuteReader(); Console.WriteLine("First_Name Last_Name"); while(reader.Read()) Console.WriteLine("{0} {1}",reader.GetString(0), reader.GetString(1)); reader.Close(); con.Close(); } }