comm.Parameters.Add("@cdid", MySqlDbType.Int32);
comm.Parameters.Add("@memid", MySqlDbType.Int32);
comm.Parameters["@cdid"].Value = ((Para)cbDisciplineResult.SelectedItem).ID;
comm.Parameters["@memid"].Value = currentID;
проблема исполнения ExecuteScalar();
Ошибка
An unhandled exception of type 'MySql.Data.MySqlClient.MySqlException' occurred in MySql.Data.dll
Additional information: Fatal error encountered during command execution.
в следующем коде
MySqlConnection connect = new MySqlConnection(Params.connStr);
connect.Open();
MySqlCommand comm = connect.CreateCommand();
comm.CommandText = "select count(*) from results where compdiscid=@cdid and memid=@mem";
comm.Parameters.Add("@cdid", MySqlDbType.Int32).Value = ((Para)cbDisciplineResult.SelectedItem).ID;
comm.Parameters.Add("@memid", MySqlDbType.Int32).Value = currentID;
object result = comm.ExecuteScalar(); //место ошибки
int cnt = 0; ;
if (result != null)
{
cnt = Convert.ToInt32(result);
}
причем если параметры занести в sql запрос напрямую то проблемы не будут
пример comm.CommandText = "select count(*) from results where compdiscid=" + ((Para)cbDisciplineResult.SelectedItem).ID + " and memid=" + currentID;
Хотел разобраться в чем дело, потому как переписывать таким способом все запросы накладно будет.
Жду ваших мыслей.
Попробуй другой запрос: без агрегатов, т.е. простой select.
Код: