Похоже, что соединение удаляется (или, возможно, даже не открывается вообще!)
В идеале я бы изменил это, чтобы использовать подход единичной работы, а также обернуть ваши экземпляры при использованииблоки для обеспечения их правильной утилизации:
using (var connection = new MySqlConnection("connection-string"))
{
using (var command = new MySqlCommand(query, connection))
{
connection.Open();
command.Parameters.AddWithValue("?name", name);
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine(reader[0]);
}
}
}
}
Кроме того, какова цель вызова cmd.ExecuteNonQuery();
после того, как вы уже использовали ExecuteReader()
?