private void roleDataGrid_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
string str_id_card = roleDataGrid.DataKeys[(int)e.Item.ItemIndex].ToString(); //主键值
string str_real_name = ((TextBox)e.Item.FindControl("TextBox1")).Text.Trim();
string str_department = ((DropDownList)e.Item.Cells[2].FindControl("Dropdownlist1")).SelectedValue; ..........
接一来就是写SQl语句更新数据库!
}
{
string str_id_card = roleDataGrid.DataKeys[(int)e.Item.ItemIndex].ToString(); //主键值
string str_real_name = ((TextBox)e.Item.FindControl("TextBox1")).Text.Trim();
string str_department = ((DropDownList)e.Item.Cells[2].FindControl("Dropdownlist1")).SelectedValue; ..........
接一来就是写SQl语句更新数据库!
}
String updateCmd = "UPDATE Table1 SET name = @Name, unit = @Unit, number = @Number, sort = @Sort, "+ "place = @Place, re = @Re where name = @OldName";
myCommand.Parameters["@OldName"].Value =((TextBox)e.Item.FindControl("Name1")).Text;}
myCommand.Parameters["@Name"].Value =((TextBox)e.Item.FindControl("Name1")).Text;
myCommand.Parameters["@Unit"].Value =((TextBox)e.Item.FindControl("Unit1")).Text;
myCommand.Parameters["@Number"].Value =((TextBox)e.Item.FindControl("Number1")).Text;
myCommand.Parameters["@Sort"].Value =((TextBox)e.Item.FindControl("Sort1")).Text;
myCommand.Parameters["@Place"].Value =((TextBox)e.Item.FindControl("Place1")).Text;
myCommand.Parameters["@Re"].Value =((TextBox)e.Item.FindControl("Re1")).Text;如果我把name列修改了的话,这个SQl语句就没有作用了,关键是这个SQl语句怎么写呀??
我没有设主键.
DataKey,这样你的SQL也就不用改了,对了,为了美观起见,可以将此列的Visible属性改为false