注册 登录
编程论坛 ASP.NET技术论坛

求助GridView控件中数据更新问题

stonefang 发布于 2007-05-15 21:30, 905 次点击
下面是VS03里更新DataGrid的代码,怎么改为GridView下的更新代码?请指点.
string st_sqlstr = "update ST_teacher set ST_Teacher_name=@teacher_name,ST_Teacher_college=@teacher_college where ST_Teacher_id=@teacher_id";
SqlCommand st_comm = new SqlCommand(st_sqlstr, con);
st_comm.Parameters.Add(new SqlParameter("@teacher_name", SqlDbType.VarChar, 50));
st_comm.Parameters.Add(new SqlParameter("@teacher_college", SqlDbType.VarChar, 50));
st_comm.Parameters.Add(new SqlParameter("@teacher_id", SqlDbType.VarChar, 50));
string st_colvalue = ((TextBox)e.Item.Cells[2].Controls[0]).Text;
st_comm.Parameters["@teacher_name"].Value = st_colvalue;
st_colvalue = ((TextBox)e.Item.Cells[3].Controls[0]).Text;
st_comm.Parameters["@teacher_college"].Value = st_colvalue;
st_comm.Parameters["@teacher_id"].Value = st_dtg_teacher.DataKeys[(int)e.Item.ItemIndex];
st_comm.Connection.Open();
try
{
st_comm.ExecuteNonQuery();
Lbl_note.Text = "编辑成功";
Gv_teach.EditItemIndex = -1;
}
catch (SqlException)
{
Lbl_note.Text = "编辑失败";
Lbl_note.Style["color"] = "red";
}
st_comm.Connection.Close();
St_BindGridView();
7 回复
#2
tel19822007-05-15 22:13
参照一下这段代码吧:
protected void gvQz_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string strID = this.gvQz.DataKeys[e.RowIndex].Value.ToString();
string qzhm = ((TextBox)gvQz.Rows[e.RowIndex].Cells[1].Controls[0]).Text;
string qzmz = ((TextBox)gvQz.Rows[e.RowIndex].Cells[2].Controls[0]).Text;
string qzks = ((TextBox)gvQz.Rows[e.RowIndex].Cells[3].Controls[0]).Text;
string qzzz = ((TextBox)gvQz.Rows[e.RowIndex].Cells[4].Controls[0]).Text;
string qzajzs = ((TextBox)gvQz.Rows[e.RowIndex].Cells[5].Controls[0]).Text;
string qzwjzs = ((TextBox)gvQz.Rows[e.RowIndex].Cells[6].Controls[0]).Text;
string qzjs=((TextBox)gvQz.Rows[e.RowIndex].Cells[7].Controls[0]).Text;
string updatestr = "update qztable set qzNumber='" + qzhm + "',qzName='" + qzmz + "',dtBegin='" + qzks + "',dtEnd='" + qzzz + "',RecordTotal='" + qzajzs + "',FileTotal='" + qzwjzs + "',qzIntro='"+qzjs+"' where qzID='" + strID + "'";
string strsql = ConfigurationManager.ConnectionStrings["qzsql"].ConnectionString;
SqlConnection con = new SqlConnection(strsql);
con.Open();
SqlCommand cmd = new SqlCommand(updatestr, con);
//Response.Write(updatestr);
//Response.End();
cmd.ExecuteNonQuery();
cmd.Dispose();
con.Close();
con.Dispose();
this.gvQz.EditIndex = -1;
this.bindTogvQz();
}
#3
stonefang2007-05-18 23:10
gridview中删除数据,我写了如下代码,但不能删除,请高人指点.
SqlConnection con = DB.CreateConn();
st_sqlstr = "delete from Teacher where Teaher_id='"+this.Gv_teach.DataKeys[e.RowIndex].Value+"'";
con.Open();
SqlCommand cmd = new SqlCommand(st_sqlstr,con);
cmd.ExecuteNonQuery();
Response.Write("<script language='javascript'>alert('删除成功')</script>");
St_BindGridView();
#4
rainic2007-05-20 12:32
删除时报什么错?

输出st_sqlstr看看是什么呀
#5
stonefang2007-05-20 19:48
没有出错,就是点了没反映,
#6
OYTL13142007-05-21 04:08
#7
bygg2007-05-21 09:27
以下是引用stonefang在2007-5-20 19:48:52的发言:
没有出错,就是点了没反映,

没反应?那就设置一个断点,一步一步地看.主要看一下你的SQL有没有意义..

#8
tel19822007-05-21 12:04
可以断点执行一下咯,bygg说得没错。
1