protected void submit(object sender, EventArgs e)
    {
        OleDbConnection myconn = db.createconnection();
        myconn.Open();
 
        string sqlstr = "Update arealist Set areaclass=@areaclass Where id=@id";
        OleDbCommand updatecmd = new OleDbCommand(sqlstr, myconn);            updatecmd.Parameters.Add("@id", OleDbType.Integer, 16);
            string bb = Request.QueryString["id"].ToString();
            updatecmd.Parameters["@id"].Value = bb;
            updatecmd.Parameters.Add("@areaclass", OleDbType.VarChar, 16);
           
            updatecmd.Parameters["@areaclass"].Value = this.textbox1.Text;
              updatecmd.ExecuteNonQuery();            myconn.Close();               }就是update不了数据库的字段.
数据库链接没问题.
request.querystring字段能 传过来.
程序也没有报错. 就是通过输入 textbox. 再按 button .触发这个事件.谢谢~~~在线等.

解决方案 »

  1.   

    updatecmd.Parameters.Add("@id", OleDbType.Integer, 16);
                string bb = Request.QueryString["id"].ToString();
                updatecmd.Parameters["@id"].Value = bb;数值类型,但赋的是文本类型的值
      

  2.   

    看下 Page_Load(object sender, EventArgs e) 
    里面有没有问题
      

  3.   

    string bb = Request.QueryString["id"].ToString();改為int bb = int.Parese(Request.QueryString["id"].ToString());
      

  4.   

    string sqlstr ="Update arealist Set areaclass=? Where id=?";参数按语句的顺序来
      

  5.   

    string sqlstr ="Update arealist Set areaclass=? Where id=?";参数按语句的顺序来--------------------------------
    是这个原因.谢谢
      

  6.   

    string sqlstr ="Update arealist Set areaclass=? Where id=?";参数按语句的顺序来--------------------------------
    是这个原因.谢谢
    --------------------
    奇怪