提问者:小点点

MySqlDataReader没有行,但Query有数据


我在PHPmyadmin中的查询有结果,但在C#中,a.read()不返回数据。

string query = "SELECT answer FROM tbl WHERE level = " + level + " AND subject = '" + subject[i] + "';";

MySqlCommand command = new MySqlCommand(query, connection);
connection.Open();
MySqlDataReader a = command.ExecuteReader();
while (a.Read())
{
    //Do Some Things
}
connection.Close();

共2个答案

匿名用户

我认为查询字符串不正确,您可以使用string.format()更好,这是代码:

string query = String.Format("SELECT answer FROM tbl WHERE level ={0} AND subject = '{1}'",level, subject[i].ToString());

匿名用户

从查询中删除单引号,使用下面的。

string query = "SELECT answer FROM tbl WHERE level = " + "x" + " AND subject = " + "y" + ";";