黑马程序员技术交流社区

标题: 怎么把修改后的datagridview中的值更新到数据库中 [打印本页]

作者: pengyuming    时间: 2014-5-1 15:53
标题: 怎么把修改后的datagridview中的值更新到数据库中
在winform中,我通过查询把一些数据绑定在了datagridview中,有没有什么方法把其中的数据修改后再更新到数据库中?
作者: continue     时间: 2014-5-1 19:57
我它提供了一个自动更新的功能,这个好像是和绑定有关。没弄过,我一直都是手动的将修改后的数据更新到数据库,
作者: pengyuming    时间: 2014-5-1 21:03
continue  发表于 2014-5-1 19:57
我它提供了一个自动更新的功能,这个好像是和绑定有关。没弄过,我一直都是手动的将修改后的数据更新到数据 ...

手动的话应该怎么操作?
作者: 朝花夕拾_黑马    时间: 2014-5-1 21:44
手动绑定查到的数据到DataGridView,就是将数据库中查到的表或Dataset等绑定给datagridview,修改后再重新查询下重新绑定到datagridview不就行了吗
作者: continue     时间: 2014-5-1 23:20
pengyuming 发表于 2014-5-1 21:03
手动的话应该怎么操作?

修改后,拿到修改的数据行的值,然后写回数据库就是了,你可以在绑定的时候把数据表的ID给隐藏起来不显示,这样获取数据的时候容易一点,
作者: 袁晓俊    时间: 2014-5-9 12:53
本帖最后由 袁晓俊 于 2014-5-9 12:55 编辑

我见过一些ERP,他们的操作方法是点击你需要修改的哪一行数据,然后通过单击单击事件将那一的数据赋值到对应的文本框中,然后在修改文本框中的值,最后通过数据访问层的逻辑代码来实现就可以了。我的毕业设计业做了一个酒店管理信息系统,其中也有这个操作,你可以看我的操作。如下图
在datagridview的cellclick事件中写下面类似的代码
   private void dgvSysUserList_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {  this.textBox3.Text = this.dgvSysUserList[0, e.RowIndex].Value.ToString();
            this.textBox31.Text = this.dgvSysUserList[1, e.RowIndex].Value.ToString();
          this.textBox4.Text = this.dgvSysUserList[2, e.RowIndex].Value.ToString();
         this.textBox2  .Text = this.dgvSysUserList[3, e.RowIndex].Value.ToString();
            this.comboBox1  .Text = this.dgvSysUserList[4, e.RowIndex].Value.ToString();
             this.dateTimePicker5 .Text = this.dgvSysUserList[5, e.RowIndex].Value.ToString();
             this.dateTimePicker4 .Text = this.dgvSysUserList[6, e.RowIndex].Value.ToString();
,,,,,,,,,,,,,,,,,,,,,,,,,,,类似
            }
           catch {}


        }


设置一个“保存”的按钮,然后对应的ADO.NET的操作即自己写吧,那个不是很难。我是袁晓俊(QQ:1181567882,可以交个好友)

QQ截图20140509125010.jpg (224.53 KB, 下载次数: 29)

QQ截图20140509125010.jpg

作者: /fendou    时间: 2014-5-9 20:11
SQL的update语句就能实现了啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2