黑马程序员技术交流社区

标题: DataAdapter是什么,与DataSet有什么关系? [打印本页]

作者: 黄珍    时间: 2012-4-6 18:09
标题: DataAdapter是什么,与DataSet有什么关系?
DataAdapter是干什么用的,与DataSet之间存在怎样的联系?
作者: 张云静    时间: 2012-4-6 18:20
DataAdapter是用来争对一个记录集的操作方法集合。所谓方法集合就是提供了INSERTCOMMAND、DELETECOMMAND、UPDATECOMMAND、SELECTCOMMAND几种方法。主要负责对数据库的操作。
DataSet是一个记录集集合。除了多个记录集之外,还存在各个记录集之间的关系,并不是单纯的记录数据,还包含字段类型等等信息。对每条记录都保存记录的各种状态COPY,用以更新时生成更新数据。
DataAdapter是连接数据库的,
DataSet是保存数据的,保存在DataTable,可以从DataAdapter得到:dataAdapter.Fill(   dataSet   );
,也可以从XML中得到
作者: 白建新    时间: 2012-4-6 18:22
DataAdapter是用来争对一个记录集的操作方法集合。所谓方法集合就是提供了INSERTCOMMAND、DELETECOMMAND、UPDATECOMMAND、SELECTCOMMAND几种方法。主要负责对数据库的操作。
DataSet是一个记录集集合。除了多个记录集之外,还存在各个记录集之间的关系,并不是单纯的记录数据,还包含字段类型等等信息。对每条记录都保存记录的各种状态COPY,用以更新时生成更新数据
DataAdapter是读数据库用的
DataSet是在内存中临时存放数据用的
DataAdapter是填充数据集(DataSet)用的
DataAdapter就是连接DATASET和数据库的桥梁

作者: 姜志钦    时间: 2012-4-7 00:13
本帖最后由 姜志钦 于 2012-4-7 07:13 编辑

Connection 对象负责连接数据库 --->DataAdapter对象负责数据集和数据库的联系--->数据集DataSet存放独立于数据源的数据。也就是我们要处理一次操作都要连接一次数据库,这样会占用很多资源,而DataSet数据集一次性把数据库的表加载到本地,在本地完成所有的增删改查动作,再用命令update返回保存到数据库。而且DataSet也可以使用数据库的视图筛选数据,用到的命令DataView dv=new DataView(DataSet中的表),dv.RowFilter("筛选条件")。
for example:我们一个工厂在生产一批产品,这批产品需要很多的原材料,这些原材料放在仓库,如果生产时用到一样材料就到仓库取一样,生产效率就低了,如果把所有材料一次性放到生产车间的暂存区(备料间),生产时取料就方便了。生产好的产品也放在车间的另一个暂存区,生产完再一次性拉到仓库。DataAdapter 和DataSet 就是执行这样一个功能,把我们程序处理用的数据一次性放到我们DataSet本地数据集里,DataAdapter 就好比从仓库运到生产暂存区的那辆货车。
作者: 曾驰文    时间: 2012-4-7 11:22
数据库好比是一个存放物体的总仓库  dataset是一个零时的仓库 dataadapter  就好比一个大货车将数据从总仓库拉到临时仓库
作者: ★心秒★    时间: 2012-4-7 12:47
DataSet是一个在本地内存中存放从数据库中读出的数据集。可以使用它来经行离线(断开与数据库的连接)访问,这样就可以避免长时间占用数据库连接资源,因为数据库连接是一个和宝贵的资源,是有限的,使用DataSet就可以避免长时间占用数据库连接资源。让用户直接从本地的内存中就可以访问到从数据库返回的数据。
DataAdapter是数据库与DataSet的桥梁。使用它,就可以把数据库中返回的数据写入DataSet中。也可以把做过更改后的数据集给更新到数据库中。。。 像是一个媒婆。
作者: 郭青松    时间: 2012-4-7 19:49
DataAdapter是卡车 它在断开模式下 负责从SQL数据库运送数据到内存并把数据装填到DateSet里面,
DateSet 就是内存中的一个“小数据库” 它里面是一张张的表。这个表来源于DataAdapter
作者: pray    时间: 2014-4-26 03:12

DataAdapter是卡车 它在断开模式下 负责从SQL数据库运送数据到内存并把数据装填到DateSet里面,
DateSet 就是内存中的一个“小数据库” 它里面是一张张的表。这个表来源于DataAdapter
作者: pray    时间: 2014-4-26 03:17
切!(虽然仅仅一个字,却生动的表达了回复人的不屑于洒脱,反映出作者性格中的冷漠和无奈,以一种打酱油的心情冷眼旁观这世界,足以反应作者被社会冷漠氛围的影响,也反应了河蟹社会人们从敢怒不敢言的心情逐渐转变成不愿言,不想言知道无话可言的一种悲哀,深深的反映出现在网络审查之严厉,跨省之可怕,最后以感叹号结尾,点睛之笔,将文章升华为一切归于不言中,一切又有谁敢言的境界,用最精炼且安全的文字,表达了大家内心深处的抗争)




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