MySqlCommand Sql1 = new MySqlCommand("SELECT * FROM animal WHERE idAnimal ='" + label1.Text + "'", Connection);
MySqlDataReader dr1;
dr1 = Sql1.ExecuteReader();
while (dr1.Read())
{
String idAnimal = dr1["idAnimal"].ToString();
MySqlCommand Sql2 = new MySqlCommand("SELECT * FROM town WHERE id ='" + idAnimal + "'", Connectio);
MySqlDataReader dr2;
dr2 = Sql2.ExecuteReader();
while (dr2.Read())
{
dataGridView1.Rows.Add(dr2["number"], dr2["name"]);
}
dr2.Close();
}
dr1.Close();
Connection.Close();
发布于 2018-06-02 04:46:58
您不能在两个命令中同时使用相同的"Connection“变量。如果您想在读取第一个连接的过程中打开另一个连接,只需创建第二个连接即可。
发布于 2018-06-02 04:47:35
您正在为DataReader使用相同的连接,但不支持ExecuteNonQuery.which,根据MSDN,您必须为每个datareader创建sperate连接。
https://stackoverflow.com/questions/50650694
复制相似问题