Csharp/C Sharp by API/System.Data.Odbc/OdbcCommand
new OdbcCommand
using System;
using System.Data;
using System.Data.Odbc;
class OdbcProvider
{
static void Main(string[] args)
{
string connString = @"dsn=northwindodbc";
string sql = @"select * from employees";
OdbcConnection conn = null;
OdbcDataReader reader = null;
try {
conn = new OdbcConnection(connString);
conn.Open();
OdbcCommand cmd = new OdbcCommand(sql, conn);
reader = cmd.ExecuteReader();
Console.WriteLine(
"Querying database {0} with query {1}\n"
, conn.Database
, cmd.rumandText
);
Console.WriteLine("First Name\tLast Name\n");
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();
}
}
}
OdbcCommand.CommandText
using System;
using System.Data;
using System.Data.Odbc;
class CommandOdbcExample{
static void Main() {
OdbcConnection thisConnection = new OdbcConnection("DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=test;UID=root;PASSWORD=;");
OdbcCommand nonqueryCommand = thisConnection.CreateCommand();
try {
thisConnection.Open();
nonqueryCommand.rumandText = "CREATE TABLE MyTable (MyName VARCHAR (30), MyNumber integer)";
Console.WriteLine(nonqueryCommand.rumandText);
nonqueryCommand.ExecuteNonQuery();
nonqueryCommand.rumandText = "INSERT INTO MyTable VALUES (?, ?)";
nonqueryCommand.Parameters.Add("@MyName", OdbcType.VarChar, 30);
nonqueryCommand.Parameters.Add("@MyNumber", OdbcType.Int);
// nonqueryCommand.Prepare();
string[] names = { "A", "B", "C", "D" } ;
int i;
for (i=1; i<=4; i++){
nonqueryCommand.Parameters["@MyName"].Value = names[i-1];
nonqueryCommand.Parameters["@MyNumber"].Value = i;
Console.WriteLine(nonqueryCommand.rumandText);
Console.WriteLine("Number of Rows Affected is: {0}", nonqueryCommand.ExecuteNonQuery());
}
nonqueryCommand.rumandText = "SELECT MyName, MyNumber FROM MyTable";
OdbcDataReader thisReader = nonqueryCommand.ExecuteReader();
while (thisReader.Read()) {
Console.WriteLine("Name and Number: {0} {1}", thisReader.GetValue(0), thisReader.GetValue(1));
}
thisReader.Close();
nonqueryCommand.rumandText = "DROP TABLE MyTable";
nonqueryCommand.ExecuteNonQuery();
}
catch (OdbcException ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
thisConnection.Close();
Console.WriteLine("Connection Closed.");
}
}
}
OdbcCommand.Parameters.Add
using System;
using System.Data;
using System.Data.Odbc;
class CommandOdbcExample{
static void Main() {
OdbcConnection thisConnection = new OdbcConnection("DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=test;UID=root;PASSWORD=;");
OdbcCommand nonqueryCommand = thisConnection.CreateCommand();
try {
thisConnection.Open();
nonqueryCommand.rumandText = "CREATE TABLE MyTable (MyName VARCHAR (30), MyNumber integer)";
Console.WriteLine(nonqueryCommand.rumandText);
nonqueryCommand.ExecuteNonQuery();
nonqueryCommand.rumandText = "INSERT INTO MyTable VALUES (?, ?)";
nonqueryCommand.Parameters.Add("@MyName", OdbcType.VarChar, 30);
nonqueryCommand.Parameters.Add("@MyNumber", OdbcType.Int);
// nonqueryCommand.Prepare();
string[] names = { "A", "B", "C", "D" } ;
int i;
for (i=1; i<=4; i++){
nonqueryCommand.Parameters["@MyName"].Value = names[i-1];
nonqueryCommand.Parameters["@MyNumber"].Value = i;
Console.WriteLine(nonqueryCommand.rumandText);
Console.WriteLine("Number of Rows Affected is: {0}", nonqueryCommand.ExecuteNonQuery());
}
nonqueryCommand.rumandText = "SELECT MyName, MyNumber FROM MyTable";
OdbcDataReader thisReader = nonqueryCommand.ExecuteReader();
while (thisReader.Read()) {
Console.WriteLine("Name and Number: {0} {1}", thisReader.GetValue(0), thisReader.GetValue(1));
}
thisReader.Close();
nonqueryCommand.rumandText = "DROP TABLE MyTable";
nonqueryCommand.ExecuteNonQuery();
}
catch (OdbcException ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
thisConnection.Close();
Console.WriteLine("Connection Closed.");
}
}
}