Csharp/C Sharp/Database ADO.net/OdbcCommand
Версия от 15:31, 26 мая 2010; (обсуждение)
Содержание
Create database through OdbcCommand
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.");
}
}
}
OleDbConnection: ConnectionTimeout
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.OleDb;
class MainClass {
public static void Main() {
using (OleDbConnection con = new OleDbConnection()) {
con.ConnectionString = "Provider=SQLOLEDB;" +
@"Data Source=.\sqlexpress;" +
"Initial Catalog=Northwind;" +
"Integrated Security=SSPI";
con.Open();
if (con.State == ConnectionState.Open) {
Console.WriteLine(" Timeout = " + con.ConnectionTimeout);
} else {
Console.WriteLine("OleDbConnection failed to open.");
Console.WriteLine(" Connection State = " + con.State);
}
}
}
}
Pass parameters to OdbcCommand
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.");
}
}
}
Read query result from OdbcCommand
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);
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.");
}
}
}