Connection:主要用来开启程序和数据库之间的连接,没有利用Connection对象连接数据库,是无法从数据库中取得数据的。Close()和Dispose()的区别就是Close以后还可以Open,但是Dispose是释放了连接,要操作数据库就要重新连接数据库。

Command:主要用来对数据库发出一些指令,例如可以对数据库发出增删改查的指令,或者调用存在数据库中的存储过程等。这个对象是建立在Connection对象之上的,也就是Command对象需要连接到数据库之后才可以操作数据库中的数据。

DataAdapter:主要是在数据源以及DataSet之间执行数据库传输工作,它可以透过Command对象下达命令后,然后将取得的数据通过DataAdapter对象调用Fill()方法填充到DataSet对象中。

DataSet:这个对象可以视为一个暂存区(Cache),可以把从数据库中所查询到的数据保留起来,甚至可以将整个数据库显示出来,DataSet是放在内存中的,DataSet的能力不只是可以存储多个Table而已,还可以透过DataAdapter对象取得一些例如主键等的数据表结构,并可以记录数据表间的关联。DataSet对象可以说是ADO.Net中重量级的对象,这个对象架构在DataAdapter对象上,本身不具备和数据源沟通的能力;也就是说我们是将DataAdapter对象当作DataSet对象以及数据源间传输数据的桥梁。DataSet包含若干DataTable、DataTable包含若干DataRow。

DataReader:当我们只需要循序的读取数据而不需要其他操作时,可以使用DataReader对象。DataReader对象只是一次一次向下循序读取数据源中的数据,这些数据是存在数据库服务器中的,而不是一次性加载到程序的内存中的,只能(通过游标)读取当前行的数据,而且这些数据是只读的,并不允许其他的操作。因为DataReader在读取数据的时候限制了每次只读取一行,而且只能只读,所以使用起来不但节省资源而且效率很高。使用DataReader对象除了效率较好之外,因为不用把数据全部传回,故可以降低网路的负载。

总结:ADO.NET 使用Connection 对象来连接数据库,使用Command 或DataAdapter 对象来执行SQL 语句,并将执行的结果返回给DataReader 或DataAdapter ,然后再使用取得的DataReader 或DataAdapter 对象操作数据结果。

下面是ADO.Net这五个对象之间的关系图

转载于:https://www.cnblogs.com/taofx/p/4136850.html

ADO.NET中的五个主要对象相关推荐

  1. 浅谈ADO.NET中的五个主要对象

    ADO.NET 对象模型中有五个主要的组件,分别是Connection 对象.Command 对象.DataSetCommand.DataSet 以及DataReader.这些组件中 负责建立联机和数 ...

  2. ADO.NET中的五个主要对象介绍及使用

    对象说明: 1.Connection 对象    Connection 对象主要是开启程序和数据库之间的连结.没有利用连结对象将数据库打开,是无法从数据库中取得数据的.这个物件在ADO.NET 的最底 ...

  3. [No0000BC]ADO.NET中的几个主要对象

    ADO 指 ActiveX 数据对象(ActiveX Data Objects). 从一个 ASP 页面内部访问数据库的通常的方法是: 创建一个到数据库的 ADO 连接 打开数据库连接 创建 ADO ...

  4. ADO.NET中五个对象

    一.五类对象 1.Connection对象: connection对象是开启数据库与程序之间的连接,是一个连接对象,用来创建连接对象,没有这个对象是无法从数据库获取到信息.它在ADO.NET最底层. ...

  5. 深入分析ADO.NET中的DataSet对象

    ADO.NET是.net Framework SDK中用以操作数据库的类库的总称.而DataSet类则是ADO.NET中最核心的成员之一,也是各种开发基于.Net平台程序语言开发数据库应用程序最常接触 ...

  6. ADO.NET中COMMAND对象的ExecuteNonQuery、ExcuteReader和ExecuteScalar方法

    1.ExecuteNonQuery方法. 该方法执行更新操作,即与UPDATE.INSERT.DELETE等语句有关的操作,在这种情况下,返回值是命令影响的行数.对其他语句,如SET或CREATE,则 ...

  7. ADO.NET中5大对象简介

    ADO.NET中5大对象简介 ADO.NET在以前的学习中接触过,并以应用过,但并没有好好的总结过.最近这段时间的学习又复习了这块的知识,下面就我现在所知道的总结归纳一下. ADO.NET是基于XML ...

  8. PHP中的MySQLi扩展学习(五)MySQLI_STMT对象操作

    PHP中的MySQLi扩展学习(五)MySQLI_STMT对象操作 就像 PDO 中的 PDO_Statment 对象一样,MySQLI_STMT 对象也是一个预处理语句所形成的对象,专门用来操作 M ...

  9. Java中创建(实例化)对象的五种方式

    Java中创建(实例化)对象的五种方式 1.用new语句创建对象,这是最常见的创建对象的方法. 2.通过工厂方法返回对象,如:String str = String.valueOf(23);  3.运 ...

最新文章

  1. 雷林鹏分享:jQuery EasyUI 数据网格 - 创建属性网格
  2. Method not found: '!!0[] System.Array.Empty()'.
  3. 今天学了瀑布流的js方法
  4. 华为可以看游戏时长吗_怎么测试华为手机玩游戏的帧率情况
  5. EFK6.3+kafka+logstash日志分析平台集群
  6. 前端集合删除对象_【两万字】面试官:听说你精通集合源码,接我二十个问题!...
  7. 【ZJCPC2019 第16届 浙江省赛】The 16th Zhejiang Provincial Collegiate Programming Contest(GFHIJ 5题)
  8. Android实现多条Toast快速显示(强制中止上一条Toast的显示)
  9. 清明上河图轴卷图滑动
  10. 浏览器使用flash时出现此Flash Player 与您所在地区不相容的提示解决方法
  11. 1.1 pug常用命令
  12. 孙子算经-秦王暗点兵问题
  13. 除了Google Adsense外比较适合英文站投放的国外广告联盟
  14. LPC1768 IAP
  15. 江苏省一级计算机ms,计算机一级六大MS题型介绍
  16. matlab离散点数字微分,MATLAB数值积分与微分
  17. oracle多维度查询数据
  18. 字符串逆序输出c语言,5、输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。...
  19. 数据库表去除重复数据
  20. 2016年之年中总结

热门文章

  1. 几分钟学会归并排序和快速排序
  2. 数字电路数据选择器及其应用实验报告_科普|说说大数据是什么,及其特点与应用...
  3. java md5运算_java实现计算MD5
  4. Android 实现扑克牌动画,android – 重叠图像(扑克牌)
  5. suse linux下交叉编译,阐述SUSE 10.1交叉编译环境构建方法
  6. twitter数据集_大数据周报-201925
  7. 从初恋到生子,聊聊我的十年爱情。
  8. 啥是PID?PID可以吃吗?
  9. 「权威发布」2019年全国大学生电子设计竞赛获奖名单【涵盖国一、二等奖】
  10. FPGA实现智能小车竞速