Your going to have to convert everything anyway.
The fields in the table in this example would be
varchar(some length)
tinyint(1)
int(your choice)
I've had the best results as below
Hope this helps......
public bool AddNewRecordInSomeTable(string sSomeString, bool bSomeBool, int iSomeNumber)
{
bool bReturn = false;
if (DbConn.State != ConnectionState.Open)
DbConn.Open();
string sqlIns = "INSERT INTO YOUR_TABLE (fieldString, fieldBool, fieldNumber) +
" VALUES " +
"(@fieldString, @fieldBool, @fieldNumber)";
try
{
MySqlCommand cmdIns = new MySqlCommand(sqlIns, DbConn);
cmdIns.Parameters.AddWithValue("@fieldString", sSomeString.Trim());
cmdIns.Parameters.AddWithValue("@fieldBool", bSomeBool);
cmdIns.Parameters.AddWithValue("@fieldNumber", iSomeNumber);
cmdIns.ExecuteNonQuery();
cmdIns.Parameters.Clear();
cmdIns.Dispose();
cmdIns = null;
bReturn = true;
}
catch (MySqlException e)
{
// Send the error to your error handler e.ToString();
bReturn = false;
}
if (DbConn.State == ConnectionState.Open)
DbConn.Close();
return (bReturn);
}
}
public bool GetFirstTableRecordWhereBoolIsTrue(ref string sSomeString, bool bTheBoolValue, ref int iSomeNumber)
{
bool bFound = false;
if (DbConn.State != ConnectionState.Open)
DbConn.Open();
try
{
string sql = "SELECT * FROM YOUR_TABLE";
MySqlCommand cmd = new MySqlCommand(sql, DbConn);
MySqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
bTheBoolValue = Convert.ToBoolean(rdr[1]);
if(bTheBoolValue)
bFound = true;
sSomeString = rdr[0].ToString();
iSomeNumber = Convert.ToInt32(rdr[2]);
break;
}
rdr.Close();
}
catch (Exception ex)
{
// Send the error to your error handler e.ToString();
bFound = false;
}
if (DbConn.State == ConnectionState.Open)
DbConn.Close();
return (bFound);
}