我在daragrid里面更新数据的时候有错误,一样的方法做了两个页,但是一个页是可以正常运行,另一个却不可以!~运行之后,不出任何的错误,但是更改了数据之后,数据库不产生任何变化。。代码如下:
string content;
int id;
DropDownList deep = (DropDownList)e.Item.FindControl("DropDownList1"); 
DropDownList answer = (DropDownList)e.Item.FindControl("DropDownList2"); id = Convert.ToInt32(DataGrid1.DataKeys[e.Item.ItemIndex]);
content = ((TextBox)e.Item.FindControl("TextBox1")).Text; SqlConnection conn;
SqlCommand cmd;conn = new SqlConnection(ConfigurationSettings.AppSettings["constring"]);
conn.Open();cmd = new SqlCommand("update panduan content=@content,deep=@deep;answer=@answer where id=@id",conn);
cmd.Parameters.Add("@id",id);
cmd.Parameters.Add("@content",content);
cmd.Parameters.Add("@deep",deep.SelectedValue);
cmd.Parameters.Add("@answer",answer.SelectedValue);
cmd.ExecuteNonQuery();conn.Close();
Response.Write(@"<script language='Javascript'>alert('更新成功!')</script>");DataGrid1.EditItemIndex = -1;
data();

解决方案 »

  1.   

    update panduan  set content=@content,deep=@deep,answer=@answer where id=@id
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 最新版本:20070130http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
      

  2.   

    cmd.Parameters.Add("@id",id);放到后面看看最好用trace跟踪sql
      

  3.   

    int id = Convert.ToInt32(DataGrid1.DataKeys[e.Item.ItemIndex]);
    string C = ((TextBox)e.Item.FindControl("TextBox1")).Text;
    DropDownList D = (DropDownList)e.Item.FindControl("DropDownList1");
    DropDownList A = (DropDownList)e.Item.FindControl("DropDownList2"); SqlConnection conn;
    SqlCommand cmd;

    conn = new SqlConnection(ConfigurationSettings.AppSettings["constring"]);
    conn.Open(); cmd = new SqlCommand("update panduan set content=@c,deep=@d,answer=@a where id=@id",conn);
    cmd.Parameters.Add("@id",id);
    cmd.Parameters.Add("@c",C);
    cmd.Parameters.Add("@d",D.SelectedValue);
    cmd.Parameters.Add("@a",A.SelectedValue); cmd.ExecuteNonQuery(); conn.Close();
    DataGrid1.EditItemIndex = -1;
    data();
    还是不行啊`1帮我看看有什么错。在同一个页里,其他按钮的事件都可以执行,就更新不可以,为什么啊?代码如上,帮我看一下啊`!在线等到5点半`!
      

  4.   

    cmd = new SqlCommand("update panduan set content=@c,deep=@d,answer=@a where id=@id",conn);

    cmd.Parameters.Add("@c",C);
    cmd.Parameters.Add("@d",D.SelectedValue);
    cmd.Parameters.Add("@a",A.SelectedValue);
                               cmd.Parameters.Add("@id",id);
    参数传值!问题吧!一般上注意顺序!