用SqlDataReader的Read()读取结果集,如何依次读取并处理每行数据。我只能处理最后一行数据,前几个数据没有动
//检索
protected void jiansuo_Click(object sender, EventArgs e)
{
string zy = xiala.SelectedItem.Text;
SqlConnection conn = new SqlConnection(connstr);
conn.Open();
string sql = "Select 题目 from 题目信息表 where 适应专业='" + zy + "' and 审核状态='已通过'";
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
string sql1 = "Select 选中状态 from 选题结果表 where 题目='" + reader["题目"].ToString() + "'";
SqlCommand cmd1 = new SqlCommand(sql1, conn);
SqlDataReader reader1 = cmd1.ExecuteReader();
while (reader1.Read())
{
if (reader1["选中状态"].ToString() == "已被选")
{
for (int k = 0; k < biao.Rows.Count; k++)
{
string sql2 = "Select * from 题目信息表 where 适应专业='" + zy + "' and 审核状态='已通过'";
SqlDataAdapter shujuji = new SqlDataAdapter(sql2, conn); //从数据库中返回数据并填充到DataSet对象中
DataSet shuju = new DataSet(); //内存中的数据库
shujuji.Fill(shuju, "题目信息表");
biao.DataSource = shuju.Tables["题目信息表"];
biao.DataBind();
((Button)biao.Rows[k].Cells[4].FindControl("xuan")).Text = "已被选";
((Button)biao.Rows[k].Cells[4].FindControl("xuan")).Enabled = false;
}
}
}
}
conn.Close();
}