Description:
My c# code:
MySqlConnection con = new MySqlConnection("Data Source=127.0.0.1;user id=root;password=11111111;initial catalog=test;");
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = con;
cmd.CommandText = @"CREATE PROCEDURE `PROC_Count1`(IN table_name varchar(100), out p_Count int)
BEGIN
set @p_SqlSelect2 = concat( 'select count(*) into @pCount from (', table_name, ') ');
PREPARE stmt_select2 FROM @p_SqlSelect2;
EXECUTE stmt_select2;
DROP PREPARE stmt_select2;
set p_Count = @pCount;
END;";
try
{
cmd.Connection.Open();
int ret = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.ReadLine();
}
finally
{
con.Close();
}
Exception:
InnerException = {"Parameter '@p_SqlSelect2' must be defined."}
How to repeat:
My c# code:
MySqlConnection con = new MySqlConnection("Data Source=127.0.0.1;user id=root;password=11111111;initial catalog=test;");
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = con;
cmd.CommandText = @"CREATE PROCEDURE `PROC_Count1`(IN table_name varchar(100), out p_Count int)
BEGIN
set @p_SqlSelect2 = concat( 'select count(*) into @pCount from (', table_name, ') ');
PREPARE stmt_select2 FROM @p_SqlSelect2;
EXECUTE stmt_select2;
DROP PREPARE stmt_select2;
set p_Count = @pCount;
END;";
try
{
cmd.Connection.Open();
int ret = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.ReadLine();
}
finally
{
con.Close();
}
Exception:
InnerException = {"Parameter '@p_SqlSelect2' must be defined."}