数往知来 ADO.NET五个主要对象<二十六>

ADO.NET的五个主要对象

--》SqlConnection

主要是开启应用程序和数据库之间的连接, 用法:

首先使用sqlconnectiopn要对它释放资源,dispose/using,在使用sqlconnection之前必须要打开连接,调用它的Open()方法,这个open()方法里面呢创建了内连接对象

(innerConnection),sqlconnection主要就是用这个内连接对象和数据库建立连接管道的,那么和数据库建立连接管道是很耗费资源的,而且我们每次对数据库进行操作就要使用

sqlconnection建立连接管道,使用的比较频繁,如果每次都去创建内连接对象建立连接管道那么性能就会很低,微软为了解决这个问题用了一个连接池的技术,在调用sqlconnection的Open

()方法的时候它会先到连接池里去看看连接池里有没有空闲的内连接对象,如果有就直接拿来用,否则就创建一个,那么这个连接池里面的内连接对象是什么时候存进去的呢?连接池其实

本质就相当于一个list集合数组,那么在using sqlconnection的时候只是释放了这个sqlconnection对象,内连接对象并没有释放掉而是被保存到了连接池里,那么在下一次sqlconnection再

要与数据库建立连接管道的时候就可以直接拿出来用了,由于这些内连接对象以前就已经和数据库建立好了连接管道下一次拿来用就不用再重新建立了,这样就很大的提高了性能,这个

sqlconnection到连接池里拿内连接对象是根据连接字符串来的,如果这个内连接对象里的连接字符串和connection的连接字符必须要一致,否则还是会重新创建。

---》SqlCommand

主要是对数据库发出一些指令,比如说执行增加啊、删除啊、修改啊、、、等等

---》sqlDataReader

对查询出来的数据进行读取,它只是一次一笔的去读取数据源中的数据

---》DataSet

DataSet就相当于一个临时的数据库,它是把数据都保存在内存里面的,它的作用主要是把查询出来的数据保存起来,它里面也可以有一张张的很多的表,甚至可以把 整个数据库显示出来,

还可以获得数据表的结构比如说主键等,还可以保存数据表之间的关联,DataSet要架构在SqlAdapter这个对象上的,也就是说它本身不具备和数据源沟通的能力,也就是说SqlDataAdapter是

DataSet和数据源之间进行数据沟通的一个桥梁

--->SqlDataAdapter

SqlDataAdapter就是对SqlConnection和SqlCommand做了封装,内部也是new了这两个对象,它主要是用来在DataSet和数据源之间进行数据的传输的,把查询出来的数据放到DataSet里面,它

提供了很多配合DatasET使用的功能,比如Fill();

时间: 2024-11-03 21:42:16

数往知来 ADO.NET五个主要对象<二十六>的相关文章

《sort帮你排序》-linux命令五分钟系列之二十六

本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. === 好久没写技术文章了,对不住大家.今天送上sort帮你排序,以资共享.:) [正文开始] sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行

第一百二十六节,JavaScript,XPath操作xml节点

第一百二十六节,JavaScript,XPath操作xml节点 学习要点: 1.IE中的XPath 2.W3C中的XPath 3.XPath跨浏览器兼容 XPath是一种节点查找手段,对比之前使用标准DOM去查找XML中的节点方式,大大降低了查找难度,方便开发者使用.但是,DOM3级以前的标准并没有就XPath做出规范:直到DOM3在首次推荐到标准规范行列.大部分浏览器实现了这个标准,IE则以自己的方式实现了XPath. 一.IE中的XPath 在IE8及之前的浏览器,XPath是采用内置基于A

企业搜索引擎开发之连接器connector(二十六)

连接器通过监视器对象DocumentSnapshotRepositoryMonitor从上文提到的仓库对象SnapshotRepository(数据库仓库为DBSnapshotRepository)中迭代获取数据 监视器类DocumentSnapshotRepositoryMonitor在其构造方法初始化相关成员变量,这些成员属性都是与数据获取及数据处理逻辑相关的对象 /** This connector instance's current traversal schedule. */ pri

【Unity 3D】学习笔记二十六:unity游戏脚本(六)

在3D游戏世界中,任何一个游戏对象在创建的时候都会附带Transform(变换)组件,并且该组件是无法删除的,也不应该删除.在unity中,Transform面板一共有3个属性: Position  (位置) Rotation(旋转) Scale(缩放) 这三个值都是用来调整游戏对象在游戏界面中的位置,状态等相关参数. Position  (位置) 任何一个游戏对象的三维坐标都保存在Vector3容器中,该容器记录对象在X轴,Y轴,Z轴的坐标.一旦Vector33容器中的坐标发生变化,那么Sce

Bootstrap &lt;基础二十六&gt;进度条

Bootstrap 进度条.在本教程中,你将看到如何使用 Bootstrap 创建加载.重定向或动作状态的进度条. Bootstrap 进度条使用 CSS3 过渡和动画来获得该效果.Internet Explorer 9 及之前的版本和旧版的 Firefox 不支持该特性,Opera 12 不支持动画. 默认的进度条 创建一个基本的进度条的步骤如下: 添加一个带有 class .progress 的 <div>. 接着,在上面的 <div> 内,添加一个带有 class .prog

从零开始学android&lt;ImageSwitcher图片切换组件.二十六.&gt;

ImageSwitcher组件的主要功能是完成图片的切换显示,例如用户在进行图片浏览的时候,可以通过按钮点击一张张的切换显示的图片,而且使用ImageSwitcher组件在每次切换的时候也可以为其增加一些动画的效果,此类定义如下: java.lang.Object ? android.view.View ? android.view.ViewGroup ? android.widget.FrameLayout ? android.widget.ViewAnimator ? android.wid

Powershell管理系列(二十六)PowerShell操作之批量导出&导入邮箱

-----提供AD\Exchange\Lync\Sharepoint\CRM\SC\O365等微软产品实施及外包,QQ:185426445.电话18666943750 项目中有时候做跨林邮箱迁移的时候,条件不成熟,比如安全考虑或者其他考虑,不能做双林信任,这样就提出了一个问题,历史邮件需要使用的话怎么办,一个简单高效的解决办法就是从源森林批量导出邮件为.pst文件,在批量导入到目的域森林,具体操作如下: 1.赋予管理账号邮件导入导出权限,命令如下: cls whoami New-Manageme

攻城狮在路上(叁)Linux(二十六)--- linux文件系统的特殊查看与操作

一.boot sector 与 super block的关系: 1.boot sector用于存放引导装载程序,占用1024个字节. 2.super block的大小也为1024字节. 3.若block大小为1k,则boot sector和super block各占一个block. 4.若block大于1K(2K/4K)时,则两者都位于第一个block中. 二.磁盘空间的浪费问题:暂不考虑. 三.利用GUN的parted命令进行分区行为: 因为fdisk不支持高于2TB的分区. 命令格式: pa

二十六:Struts2 和 spring整合

二十六:Struts2 和 spring整合 将项目名称为day29_02_struts2Spring下的scr目录下的Struts.xml文件拷贝到新项目的scr目录下 在新项目的WebRoot---->WEB-INF目录下新建一个目录lib,用于存放jar包(Struts2和spring整合所需jar包) 将项目名称为day29_02_struts2Spring,WebRoot---->WEB-INF下的lib目录下的所有jar包拷贝到新项目对应的位置,同时将spring的配置文件appl