从datagridview更新到数据库方法

从datagridview更新到数据库从网上找的方法大多是datagridview绑定后更新到数据库。实际操作中发现存在诸多限制:

如要求必须有主键、还要主键在操作的语句中。晕,太不灵活了

常见代码:

               SqlCommandBuilder cmd = new SqlCommandBuilder();
                string str="select name,使命感,团队意识,工作能力,学习力,组织原则 from votexinxiinfo";
                Conn.getcon();   //打开与数据库的连接
                SqlDataAdapter da = new SqlDataAdapter(str, Conn.getcon());  //创建一个SqlDataAdapter对象,并获取指定数据表的信息
                DataSet ds = new DataSet(); //创建DataSet对象
                da.Fill(ds, "table1");
                cmd.DataAdapter = da;
                DataTable dt = new DataTable();
                dt = (DataTable)dataGridView1.DataSource;
                da.Update(dt);
                Conn.con_close();

后来发现通过循环加上sql语句控制更新

for (int i = 0; i < this.dataGridView1.RowCount - 1; i++)
                {
                    string a = dataGridView1.Rows[i].Cells[0].Value.ToString();
                    string b = dataGridView1.Rows[i].Cells[1].Value.ToString();
                    string c = dataGridView1.Rows[i].Cells[2].Value.ToString();
                    string d = dataGridView1.Rows[i].Cells[3].Value.ToString();
                    string p = dataGridView1.Rows[i].Cells[4].Value.ToString();
                    string q = dataGridView1.Rows[i].Cells[5].Value.ToString();
                    string str1 = "update votexinxiinfo set 使命感='" + b + "',团队意识='" + c + "',工作能力='" + d + "',学习力='" + p + "',组织原则='" + q + "'where name='"+a+"'and 时间='"+string.Format("{0:Y}", DateTime.Now)+"'";                    Conn.getsqlcom(str1);
                }
                MessageBox.Show("评价已提交完成。", "提示");

因为不加限定词直接更新会把原数据覆盖,所以加上限定词'where name='"+a+"'and 时间='"+string.Format("{0:Y}", DateTime.Now)+"'

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值