标题:求助!bindingsource删除datagridview中的当前记录后,无法更新到数据源
取消只看楼主
wingplay
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-20
结帖率:100%
 问题点数:0 回复次数:6 
求助!bindingsource删除datagridview中的当前记录后,无法更新到数据源
DatagridView绑定了Bindingsource,Bingdingsource也绑定了数据集,有一个删除的按钮,删除datagridview选中的当前记录,代码如下:
      xsxxbBindingSource.RemoveCurrent();
      xsxxbBindingSource.EndEdit();
运行时,点击按钮发现当时记录在datagridview上被删了.但是重新运行,发现该记录又回来了.说胆数据源的数据还是没有被删除掉的,只是删了数据集的数据?

要使用bindingsource来达到删除更新数据库中的数据目的,要怎样做呢? 具体代码应该怎么写?
我是初学者,请指教,谢谢各位大侠!
搜索更多相关主题的帖子: 数据源 datagridview 记录 删除 
2010-12-02 22:57
wingplay
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-20
得分:0 
回复 2楼 c1_wangyf
你的意思是:还要另建command对象,写sql的delete from *** where 条件 的语句,再执行 ExecuteNonQuery() 方法吗?
2010-12-03 09:56
wingplay
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-20
得分:0 
...这样代码要写很长吧,还要包括建adpter对象,重新填充数据集等等,有没有比较简短而有效的方法?
2010-12-03 13:21
wingplay
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-20
得分:0 
那在delete语句里,怎样写条件呢?怎样获得当前记录呢?
2010-12-03 23:42
wingplay
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-20
得分:0 
        private void button1_Click(object sender, EventArgs e)
        {
          OleDbConnection ocon = new OleDbConnection(constr);
          textBox3.Text = studentDataSet.Tables["xsxxb"].Rows[dataGridView1.CurrentRow.Index][0].ToString ();
          string delstr = "delete from xsxxb where 学号 like \"" +studentDataSet. Tables["xsxxb"].Rows[dataGridView1.CurrentRow.Index][0]+ "\"";
          OleDbCommand ocd = new OleDbCommand(delstr, ocon);
          ocon.Open();
          ocd.ExecuteNonQuery();
          ocon.Close();
          studentDataSet.Clear();
          string sql = "select * from xsxxb";         //选全表
          OleDbDataAdapter  sda = new OleDbDataAdapter (sql, ocon );
          sda.Fill(studentDataSet, "xsxxb");
        }

我这样写了,还是删不掉...到底是错在哪里呢,应该怎么改?
2010-12-05 22:09
wingplay
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-20
得分:0 
回复 9楼 c1_wangyf
我刚去试了,还是不能删除掉呢
2010-12-05 23:20
wingplay
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-20
得分:0 
回复 11楼 c1_wangyf
又去试了一下,发现了我的数据库果然不太对,因为前面添加数据源时选了复制数据到项目文件夹下,造成了操作是另一个数据库,填充到datagridview中的是另一个数据库.重新做一遍,这次不复制数据.然后按照你说的的改了一点代码,就成功了~~非常感谢!
2010-12-06 10:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-327731-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.090839 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved