用 DataSet 对象更新数据

原创 2004年07月07日 17:37:00

作者:Name: planRED
邮件:planred#163.com

http://api.533.net/ 这个是我新做的一个小站,宗旨为“beginner to beginner”,因为我也是初学者:) 里面的“心得体会” 都是我自己写的。

大家知道,DataSet保存的数据是位于服务器内存里面的原数据库的“副本”。所以用DataSet更新数据的过程就是先对“副本”进行更新,然后在将“原本”更新,按照我的理解就是把“原本”覆盖掉。具体到过程,首先是要找到需要更新的行,然后赋新值,最后更新原数据库。

要找到需要修改的行,比较方便的做法就是根据记录中的某个值进行查找,这样比用“列号”“行号”什么的方便多了。要做到这一点,首先就是要给数据库指定一个主键,然后即可按照主键进行查找。要注意的是这个主键必须要是在程序中指定的,并且这个主键不一定和你数据库原来有的主键一样。

然后就是最后的更新,当然是用DataAdapter的Update()方法借助CommandBuilder来实现,要注意的是,如果你的数据库一开始没有定义主键,那进行更新的时候会出错,返回的错误将是“对于不返回任何键列信息的 SelectCommand 不支持 UpdateCommand 的动态 SQL 生成。”这是因为我们用的Update()实际上是通过CommandBuilder动态生成sql语句,然后才进行的数据库操作。但如果你在一开始创建DataAdapter时的那个sql语句没有包含有主键的列的话,那CommandBuilder将不会发生作用。这一点是必须要牢记的。

说了这么多,如果有不明白的就看下面的程序,这个是我练习时写的,里面有一些个人的设定,比如记录名什么的,相信大家一看就明白。

代码拷贝框

数据集和数据库的同步-DataAdapter的使用

DataBase和DataSet同步数据 数据适配器概述 l         DataAdapter 连接到数据库以填充DataSet 的对象。然后,它又连接回数据库,根据DataSet 保留数据时所...
  • mikemiller2
  • mikemiller2
  • 2016年04月16日 16:12
  • 988

C#之数据集:DataSet对象

ADO.NET数据访问技术的一个突出的特点就是支持离线访问,而实现这种离线访问技术的核心就是DataSet对象,该对象通过将数据驻留在内存来实现离线访问。         DataSet对象概述 ...
  • erlian1992
  • erlian1992
  • 2015年05月26日 17:14
  • 2109

【转】C#使用DataSet Datatable更新数据库的三种实现方法

转自:http://www.jb51.net/article/54418.htm 这篇文章主要介绍了C#使用DataSet Datatable更新数据库的三种实现方法,需要的朋友可以参考下 ...
  • zjwen2007
  • zjwen2007
  • 2015年03月05日 14:23
  • 1375

利用dataset将数据给到dataGridview

怎样利用DataSet向DataGridView中添加数据呢?很简单:编写添加按钮的单击事件方法 示例代码: private void btnAdd_Click(object Sender,Eve...
  • niuge8905
  • niuge8905
  • 2017年02月05日 19:40
  • 2209

C#操作Dataset数据集与SQLite数据库

近日有需要写点C#程序,有用到Dataset数据集和SQLite数据库,由于我从来就不擅长记各种编程语言的语法,所以在查阅一堆资料后,留下以下内容备忘:   一、SQLite操作,直接贴代码...
  • zm_21
  • zm_21
  • 2014年07月03日 17:50
  • 907

C#中DataSet、SqlDataAdapter的使用-关于数据库操作

DataSet表示数据在内存中的缓存。 我的理解是,在内存中的数据表,需要引用using System.Data; SqlDataAdapter表示用于填充 DataSet 和更新 SQL Serve...
  • xubaifu1997
  • xubaifu1997
  • 2016年07月03日 20:38
  • 4237

asp.net使用DataSet数据集插入记录

http://blog.csdn.net/beyondqd/article/details/6724778 http://blog.163.com/da7_1@126/blog/static/104...
  • QZC295919009
  • QZC295919009
  • 2015年01月21日 11:22
  • 1610

C# 用DataSet读取数据

轉自:http://edu.cnzz.cn/201304/87167e0c.shtml 6,用DataSet读取数据 DataSet是Ado.Net中的核心对象,所有复杂级别的操作都使用它...
  • jane007123
  • jane007123
  • 2016年05月04日 10:47
  • 2145

.NET学习(三)用DataSet缓存数据库中的数据

DataSet相当于一个数据缓存容器。 DataAdapter用于将数据从数据库中提取出来,存放到DataSet对象中。大致有以下五个步骤: 1.实例化一个DataAdapter对象。 (注意:...
  • qq_16912257
  • qq_16912257
  • 2015年11月21日 13:09
  • 601

.Net 中DataSet和DataTable的 区别与联系

一、DataSet和DataTable的 区别与联系 1、简要说明二者关系        在我们编写代码的时候从数据库里取出数据,填充到dataset里,再根据表的名字,实例化到 datatable ...
  • xjc1278003262
  • xjc1278003262
  • 2013年08月07日 14:52
  • 14249
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用 DataSet 对象更新数据
举报原因:
原因补充:

(最多只允许输入30个字)