使用ADO.NET实现数据的更新

使用ADO.NET实现数据的更新
 public SqlConnection GetConnection()
        {
            //获取Web.Config 文件中的连接字符串
            String myStr = ConfigurationManager.AppSettings["ConnectionString"].ToString();
            SqlConnection myConn = new SqlConnection(myStr);
            return myConn;
        }
        protected void bind()
        {
            SqlConnection myConn = GetConnection();
            myConn.Open();
            string sqlStr = "select * from Test_tb5";
            SqlDataAdapter myDa = new SqlDataAdapter(sqlStr,myConn);
            DataSet myDs = new DataSet();
            myDa.Fill(myDs);

            GridView1.DataSourceID = null;
            GridView1.DataSource = myDs;
            GridView1.DataKeyNames = new string[] { "ClassID"};     //指定GridView控件绑定的主键字段
            GridView1.DataBind();
            myDa.Dispose();
            myDs.Dispose();
            myConn.Close();
        }

        protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            GridView1.EditIndex = e.NewEditIndex;
            this.bind();
        }

        protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            int ClassID = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value.ToString());
            string CName = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString();
            string sqlStr = "update Test_tb5 set ClassName ='" + CName + "'where ClassID=" + ClassID;
            SqlConnection myConn = GetConnection();
            myConn.Open();
            SqlCommand myCmd = new SqlCommand(sqlStr,myConn);
            myCmd.ExecuteNonQuery();
            myCmd.Dispose();
            myConn.Close();
            GridView1.EditIndex = -1;
            this.bind();
        }

        protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
        {
            GridView1.EditIndex = -1;
            this.bind();
        }

最后实现结果:点击左边的编辑即可出现如图所示的界面:
图片 
然后修改之后点击更新:
图片 
数据就能够得以更新,点击取消之后,数据不能更新。 

 
其中值得注意的地方在: 

1、为 
GridView设置主键值:::
 GridView1.DataKeyNames = new string[] { "ClassID"};  

2、在
GridView的相关事件中获取主键值:
 string CName = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString();

好绕的公式,区分出括号。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值