none
DataSet & Access问题 RRS feed

  • 问题

  • 碰到一个问题....
    删除不能删除....
    具体如下:
    建立了一个Access数据库,然后在项目中添加了数据集,在我删除某条数据时,需要手动在DataTable内更新..
    所以我调用了
              **DataSet.**DataTable.Remove***Row(***Row) 方法..
    但在用TableAdapterManager的UpdateAll更新的时候,在该方法的第二个判断
                if ((dataSet.HasChanges() == false)) {
                    return 0;
                }
    就被返回了..
    表示了在dataset中,没有过更改..但其中的数据确实被删除了..
    这里应该怎么写?
    我没找到其他有关删除操作的方法..


    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年11月12日 8:28

答案

  • 你好!

    删除使用 DataRow.Delete() ; 

    DataRow.Remove 相当于先后执行了 DataRow.Delete() ; 和 DataRow.AcceptChanges 所以你获取不到被删除的数据。

    知识改变命运,奋斗成就人生!
    2009年11月12日 12:52
    版主

全部回复

  • .AcceptChanges()方法
    2009年11月12日 8:56
  • 没有用的.
    HasChanges是false的..
    而且这方法好像仅仅是把状态清空,没有对数据的操作.
    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年11月12日 8:58
  • 可以在Adapter中直接用Delete方法..
    但是我如果想得到删除以后的数据,还要重新Fill DataSet中的各个Table.
    有没有在DataSet中操作,然后一起Update或Delete之类的操作?
    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年11月12日 9:04
  • 而且我看到Manager有个枚举设置...调整Update顺序的,里面的确有Delete.
    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年11月12日 9:06
  • 暂时不懂 o(∩_∩)o   我没搞过winfrom那些
    耐心等别人
    2009年11月12日 9:14
  • 你好!

    删除使用 DataRow.Delete() ; 

    DataRow.Remove 相当于先后执行了 DataRow.Delete() ; 和 DataRow.AcceptChanges 所以你获取不到被删除的数据。

    知识改变命运,奋斗成就人生!
    2009年11月12日 12:52
    版主
  • 谢了~
    呵呵....
    都有点不好意思了...总来麻烦大家帮我解答问题...


    有人说,充满技术的生活枯燥无味.. 我笑他们不懂.因为只有技术才能充实生活.. 学习就像生活,都需要善于总结,才能发现问题,取得进步.. 生活中充满了数学算式与结构,只要我们善于观察和思考..
    2009年11月13日 1:39