(Input string was not in a correct format) with ExecuteReader
-
I am getting Input string was not in a correct format with the following code:
sql_connection = new MySqlConnection(ConfigurationManager.ConnectionStrings["SQLdb"].ConnectionString);
sql_connection.Open();sql_command = new MySqlCommand("sp_check_if_member_exist", sql_connection);
sql_command.CommandType = CommandType.StoredProcedure;
sql_command.Parameters.AddWithValue("param_member_id", MySqlDbType.Int32).Value = Convert.ToInt32(Request.QueryString["id"]);
sql_command.Parameters.AddWithValue("param_member_guid", MySqlDbType.VarChar).Value = Convert.ToString(Request.QueryString["guid"]);
sql_command.Parameters.Add("param_is_exist", MySqlDbType.Bit).Direction = ParameterDirection.Output;sql_reader = sql_command.ExecuteReader();
sql_reader.Read();if (sql_reader.HasRows)
{
if (Convert.ToBoolean(sql_command.Parameters["param_is_exist"].Value) == true)
{
// prompt for activation;
panelMessage.Visible = false;
panelActivation.Visible = true;
}
else
{
panelActivation.Visible = false;
lblMessage.Text = "Error activating your membership!";
panelMessage.Visible = true;
return;
}The error occurs on this line:
sql_reader = sql_command.ExecuteReader();
where is my mistake?
-
I am getting Input string was not in a correct format with the following code:
sql_connection = new MySqlConnection(ConfigurationManager.ConnectionStrings["SQLdb"].ConnectionString);
sql_connection.Open();sql_command = new MySqlCommand("sp_check_if_member_exist", sql_connection);
sql_command.CommandType = CommandType.StoredProcedure;
sql_command.Parameters.AddWithValue("param_member_id", MySqlDbType.Int32).Value = Convert.ToInt32(Request.QueryString["id"]);
sql_command.Parameters.AddWithValue("param_member_guid", MySqlDbType.VarChar).Value = Convert.ToString(Request.QueryString["guid"]);
sql_command.Parameters.Add("param_is_exist", MySqlDbType.Bit).Direction = ParameterDirection.Output;sql_reader = sql_command.ExecuteReader();
sql_reader.Read();if (sql_reader.HasRows)
{
if (Convert.ToBoolean(sql_command.Parameters["param_is_exist"].Value) == true)
{
// prompt for activation;
panelMessage.Visible = false;
panelActivation.Visible = true;
}
else
{
panelActivation.Visible = false;
lblMessage.Text = "Error activating your membership!";
panelMessage.Visible = true;
return;
}The error occurs on this line:
sql_reader = sql_command.ExecuteReader();
where is my mistake?
-
I am getting Input string was not in a correct format with the following code:
sql_connection = new MySqlConnection(ConfigurationManager.ConnectionStrings["SQLdb"].ConnectionString);
sql_connection.Open();sql_command = new MySqlCommand("sp_check_if_member_exist", sql_connection);
sql_command.CommandType = CommandType.StoredProcedure;
sql_command.Parameters.AddWithValue("param_member_id", MySqlDbType.Int32).Value = Convert.ToInt32(Request.QueryString["id"]);
sql_command.Parameters.AddWithValue("param_member_guid", MySqlDbType.VarChar).Value = Convert.ToString(Request.QueryString["guid"]);
sql_command.Parameters.Add("param_is_exist", MySqlDbType.Bit).Direction = ParameterDirection.Output;sql_reader = sql_command.ExecuteReader();
sql_reader.Read();if (sql_reader.HasRows)
{
if (Convert.ToBoolean(sql_command.Parameters["param_is_exist"].Value) == true)
{
// prompt for activation;
panelMessage.Visible = false;
panelActivation.Visible = true;
}
else
{
panelActivation.Visible = false;
lblMessage.Text = "Error activating your membership!";
panelMessage.Visible = true;
return;
}The error occurs on this line:
sql_reader = sql_command.ExecuteReader();
where is my mistake?
check d database.... used text field values are should not be empty..........
-
I am getting Input string was not in a correct format with the following code:
sql_connection = new MySqlConnection(ConfigurationManager.ConnectionStrings["SQLdb"].ConnectionString);
sql_connection.Open();sql_command = new MySqlCommand("sp_check_if_member_exist", sql_connection);
sql_command.CommandType = CommandType.StoredProcedure;
sql_command.Parameters.AddWithValue("param_member_id", MySqlDbType.Int32).Value = Convert.ToInt32(Request.QueryString["id"]);
sql_command.Parameters.AddWithValue("param_member_guid", MySqlDbType.VarChar).Value = Convert.ToString(Request.QueryString["guid"]);
sql_command.Parameters.Add("param_is_exist", MySqlDbType.Bit).Direction = ParameterDirection.Output;sql_reader = sql_command.ExecuteReader();
sql_reader.Read();if (sql_reader.HasRows)
{
if (Convert.ToBoolean(sql_command.Parameters["param_is_exist"].Value) == true)
{
// prompt for activation;
panelMessage.Visible = false;
panelActivation.Visible = true;
}
else
{
panelActivation.Visible = false;
lblMessage.Text = "Error activating your membership!";
panelMessage.Visible = true;
return;
}The error occurs on this line:
sql_reader = sql_command.ExecuteReader();
where is my mistake?
SqlCommand.Parameters.AddWithValue() does not take datatype as an parameter. You should add the parameter name and value (not datatype)
sql_command.Parameters.AddWithValue("param_member_id", Request.QueryString["id"]);
http://derekreynolds.wordpress.com/2011/05/16/using-sqlcommand-and-addwithvalue-parameters-to-execute-sql-insert/[^] But your error "Input string was not in a correct format" is because some convert's did not succeed. When converting strings-->int etc you should use
TryParse
private static void TryToParse(string value)
{
int number;
bool result = Int32.TryParse(value, out number);
if (result)
{
Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
else
{
if (value == null) value = "";
Console.WriteLine("Attempted conversion of '{0}' failed.", value);
}
}-------------------- When Chuck Norris' dreams come true, your worst nightmares begin.
-
SqlCommand.Parameters.AddWithValue() does not take datatype as an parameter. You should add the parameter name and value (not datatype)
sql_command.Parameters.AddWithValue("param_member_id", Request.QueryString["id"]);
http://derekreynolds.wordpress.com/2011/05/16/using-sqlcommand-and-addwithvalue-parameters-to-execute-sql-insert/[^] But your error "Input string was not in a correct format" is because some convert's did not succeed. When converting strings-->int etc you should use
TryParse
private static void TryToParse(string value)
{
int number;
bool result = Int32.TryParse(value, out number);
if (result)
{
Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
else
{
if (value == null) value = "";
Console.WriteLine("Attempted conversion of '{0}' failed.", value);
}
}-------------------- When Chuck Norris' dreams come true, your worst nightmares begin.
why converting problem? I only have two paramaters: param_member_id which is int and it's int in MySQL. param_member_guid which is varchar and it's varchar in MySQL here is my values when getting error:
id=66&guid=9abc9f1e-e2f3-11e1-b39f-00ffceb1d3b5}
-
why converting problem? I only have two paramaters: param_member_id which is int and it's int in MySQL. param_member_guid which is varchar and it's varchar in MySQL here is my values when getting error:
id=66&guid=9abc9f1e-e2f3-11e1-b39f-00ffceb1d3b5}
pleassssse.....
-
I am getting Input string was not in a correct format with the following code:
sql_connection = new MySqlConnection(ConfigurationManager.ConnectionStrings["SQLdb"].ConnectionString);
sql_connection.Open();sql_command = new MySqlCommand("sp_check_if_member_exist", sql_connection);
sql_command.CommandType = CommandType.StoredProcedure;
sql_command.Parameters.AddWithValue("param_member_id", MySqlDbType.Int32).Value = Convert.ToInt32(Request.QueryString["id"]);
sql_command.Parameters.AddWithValue("param_member_guid", MySqlDbType.VarChar).Value = Convert.ToString(Request.QueryString["guid"]);
sql_command.Parameters.Add("param_is_exist", MySqlDbType.Bit).Direction = ParameterDirection.Output;sql_reader = sql_command.ExecuteReader();
sql_reader.Read();if (sql_reader.HasRows)
{
if (Convert.ToBoolean(sql_command.Parameters["param_is_exist"].Value) == true)
{
// prompt for activation;
panelMessage.Visible = false;
panelActivation.Visible = true;
}
else
{
panelActivation.Visible = false;
lblMessage.Text = "Error activating your membership!";
panelMessage.Visible = true;
return;
}The error occurs on this line:
sql_reader = sql_command.ExecuteReader();
where is my mistake?
I think I have already answered this question in a different forum. Anyway, here is your problem In this line:
sql_command.Parameters.AddWithValue("param_member_id", MySqlDbType.Int32).Value = Convert.ToInt32(Request.QueryString["id"]);
and the next two lines, you're actually passing Data Types (MySqlDbType.Int32) instead of the actual value. The AddWithValue() method expects the actual value rather than the data type. So do something like :
sql_command.Parameters.AddWithValue("param_member_id", Convert.ToInt32(Request.QueryString["id"]));