大家帮忙看看这段代码有什么错误,为什么改不了数据库中的数据呀protected void Button1_Click(object sender, EventArgs e)
    {
        string classroom = DropDownList1.Text.ToString(); //选择一个教室
        string seat =TextBox1.Text.ToString();   //输入座位号
        string booked = DropDownList4.Text.ToString();   //如果座位已被占则为1否则则为0        int m=0; 
        if( booked=="已占")
         { 
            m=1;
         }
        else
        {
            m=0;
        }
      objDataAdapter = new SqlDataAdapter("select * from [" + classroom + "]", myConn);  //选择数据库中表明与classroom相对应的表        SqlCommandBuilder scb = new SqlCommandBuilder(objDataAdapter);
        DataSet ds = new DataSet(); 
        objDataAdapter.Fill(ds, "tbseat");
        foreach (DataRow myrow in ds.Tables["tbseat"].Rows)
        {                                                    
             if (myrow["seatID"].ToString() == "seat")
             {
               myrow["isBooked"] = m;
                break;
             }
         }
        objDataAdapter.Update(ds, "tbseat");       
      
    }

解决方案 »

  1.   

     string classroom = DropDownList1.SelectedValue; //选择一个教室
    string booked = DropDownList4.SelectedValue; //如果座位已被占则为1否则则为0 int m=0;  
      

  2.   

     foreach (DataRow myrow in ds.Tables["tbseat"].Rows)
      {   
      if (myrow["seatID"].ToString() == "seat")
      {
      myrow["isBooked"] = m;
      break;
      }
      }
      objDataAdapter.Update(ds, "tbseat");LZ你这里明显有逻辑上的问题   为什么你修改myrow   ds里面的值就会改变呢  而你最后也是更新ds  当然里面的值不会改变啊    
        
    其实你是通过循环某个教室的座位  找到要判断的座位  可以在你原来的
    objDataAdapter = new SqlDataAdapter("select * from [" + classroom + "]", myConn); 
    中加上 where seatID = seat  这样相应的记录就出来了  最后要修改你要更新的值
      

  3.   

    string classroom = DropDownList1.SelectedItem.Text; //选择一个教室
    string booked = DropDownList4.SelectedItem.Text; //如果座位已被占则为1否则则为0 int m=0; 
      

  4.   

    直接用"update xxx set isBooked='"+ m +"' Where id="+ xxx不是很好吗
      

  5.   

    你就不能不用服务器控件吗?
    当你点击的时候,就不能
    直接把3个值获取到,直接修改到数据库.
    我不知道LZ学过三层没有,学过三层的人都知道,你这个不用服务器控件会更简单.还有 ASP 是 ASP  不是 ASP.NET...