ADO.NET中的五个主要对象
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中的五个主要对象相关推荐
- 浅谈ADO.NET中的五个主要对象
ADO.NET 对象模型中有五个主要的组件,分别是Connection 对象.Command 对象.DataSetCommand.DataSet 以及DataReader.这些组件中 负责建立联机和数 ...
- ADO.NET中的五个主要对象介绍及使用
对象说明: 1.Connection 对象 Connection 对象主要是开启程序和数据库之间的连结.没有利用连结对象将数据库打开,是无法从数据库中取得数据的.这个物件在ADO.NET 的最底 ...
- [No0000BC]ADO.NET中的几个主要对象
ADO 指 ActiveX 数据对象(ActiveX Data Objects). 从一个 ASP 页面内部访问数据库的通常的方法是: 创建一个到数据库的 ADO 连接 打开数据库连接 创建 ADO ...
- ADO.NET中五个对象
一.五类对象 1.Connection对象: connection对象是开启数据库与程序之间的连接,是一个连接对象,用来创建连接对象,没有这个对象是无法从数据库获取到信息.它在ADO.NET最底层. ...
- 深入分析ADO.NET中的DataSet对象
ADO.NET是.net Framework SDK中用以操作数据库的类库的总称.而DataSet类则是ADO.NET中最核心的成员之一,也是各种开发基于.Net平台程序语言开发数据库应用程序最常接触 ...
- ADO.NET中COMMAND对象的ExecuteNonQuery、ExcuteReader和ExecuteScalar方法
1.ExecuteNonQuery方法. 该方法执行更新操作,即与UPDATE.INSERT.DELETE等语句有关的操作,在这种情况下,返回值是命令影响的行数.对其他语句,如SET或CREATE,则 ...
- ADO.NET中5大对象简介
ADO.NET中5大对象简介 ADO.NET在以前的学习中接触过,并以应用过,但并没有好好的总结过.最近这段时间的学习又复习了这块的知识,下面就我现在所知道的总结归纳一下. ADO.NET是基于XML ...
- PHP中的MySQLi扩展学习(五)MySQLI_STMT对象操作
PHP中的MySQLi扩展学习(五)MySQLI_STMT对象操作 就像 PDO 中的 PDO_Statment 对象一样,MySQLI_STMT 对象也是一个预处理语句所形成的对象,专门用来操作 M ...
- Java中创建(实例化)对象的五种方式
Java中创建(实例化)对象的五种方式 1.用new语句创建对象,这是最常见的创建对象的方法. 2.通过工厂方法返回对象,如:String str = String.valueOf(23); 3.运 ...
最新文章
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建属性网格
- Method not found: '!!0[] System.Array.Empty()'.
- 今天学了瀑布流的js方法
- 华为可以看游戏时长吗_怎么测试华为手机玩游戏的帧率情况
- EFK6.3+kafka+logstash日志分析平台集群
- 前端集合删除对象_【两万字】面试官:听说你精通集合源码,接我二十个问题!...
- 【ZJCPC2019 第16届 浙江省赛】The 16th Zhejiang Provincial Collegiate Programming Contest(GFHIJ 5题)
- Android实现多条Toast快速显示(强制中止上一条Toast的显示)
- 清明上河图轴卷图滑动
- 浏览器使用flash时出现此Flash Player 与您所在地区不相容的提示解决方法
- 1.1 pug常用命令
- 孙子算经-秦王暗点兵问题
- 除了Google Adsense外比较适合英文站投放的国外广告联盟
- LPC1768 IAP
- 江苏省一级计算机ms,计算机一级六大MS题型介绍
- matlab离散点数字微分,MATLAB数值积分与微分
- oracle多维度查询数据
- 字符串逆序输出c语言,5、输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。...
- 数据库表去除重复数据
- 2016年之年中总结
热门文章
- 几分钟学会归并排序和快速排序
- 数字电路数据选择器及其应用实验报告_科普|说说大数据是什么,及其特点与应用...
- java md5运算_java实现计算MD5
- Android 实现扑克牌动画,android – 重叠图像(扑克牌)
- suse linux下交叉编译,阐述SUSE 10.1交叉编译环境构建方法
- twitter数据集_大数据周报-201925
- 从初恋到生子,聊聊我的十年爱情。
- 啥是PID?PID可以吃吗?
- 「权威发布」2019年全国大学生电子设计竞赛获奖名单【涵盖国一、二等奖】
- FPGA实现智能小车竞速