处理ADO.NET实例介绍说明

开发 后端
ADO.NET实例只能对查询获得的数据集进行自上而下的访问,但效率很高。如果仅仅是访问数据的话,可以使用DataReader。但DataReader要求一直连接,所以将结果的一小部分先放在内存中。

如果希望将事务处理与一些外部系统结合起来(比如在数据库更新时同时进行了WEB更新,如果WEB更新失败希望回滚事务时),对于ADO.NET实例选择客户端编写事务处理(用ADO编写)。。

下面进行说明ADO.NET实例提供两个对象用于检索关系型数据并把它存储在内存中,分别是DataSet和DataReader。DataSet提供内存中关系数据的表现--包括表和次序、约束等表间的关系的完整数据集合。

掌握ADO.NET实例DataSet使用方法必须掌握ADO.NET另外一个核心常用成员--数据提供者(Data Provider)。数据提供者(也称为托管提供者Managed Provider)是一个类集合,在.Net FrameWork SDK 1.0中数据提供者分为二种:The SQL Server ADO.NET实例.NET Data Provider和The OLE DB .NET Data Provider。而到了.Net FrameWork SDK 1.1时,ADO.NET中又增加了The ODBC .NET Data Provider和 The Oracle .NET Data Provider二个数据提供者。 #t#


The SQL Server .NET Data Provider的操作数据库对象只限于Sql Server 7.0及以上版本,Oracle .NET Data Provider的操作数据库对象只限于Oracle 8.1.7及以上版本。而The OLE DB .NET Data Provider和The ODBC .NET Data Provider可操作的数据库类型就相对多了许多,只要它们在本地分别提供Ole Db提供程序和ODADO.NET实例BC提供程序。


在这些数据提供者中都有一个DataAdapter类,如:OLE DB .ADO.NET实例NET Framework 数据提供者中是 OleDbDataAdapter类,The SQL Server .NET Framework 数据提供者中是SqlDataAdapter类,The ODBC .NET Framework 数据提供者中是OdbcDataAdapter类。通过这些DataAdapter就能够实现从数据库中检索数据并填充 DataSet 中的表。

ADO最大的特色就在于支持在断开连接的情况下对里的内容进行操作,这样可以大大的节约过多连接带来的消耗,前面的那一篇文章中已经给了一个具体的例子说明ADO.NET的这种特性。我们可以在从数据库里获得数据的时候打开连接。

在得到数据之后就断开连接,对dataset里面的数据进行操作,然后在把dataset里的内容更新到数据库里面的时候再打开连接。对于dataReader则必须一直保持连接。

使用这种特性的时候有几点要注意一下:
(1)更改连接属性的时候必须断开连接
(2)切换的时候选择conn.changeDatabase(dbName),减少断开连接与新建连接往返带来的消耗
ADO同时支持自带连接池。在一个连接关闭之后,连接会在池中保持一段时间,然后才实际的关闭,如果在超时之前,有人请求建立相同的连接,就将打开的连接分配给请求者,这对于经常进行打开和断开的连接可以减少很多的消耗。ADO.NET实例不过在 2000中采用集成安全性的连接无法入池。

责任编辑:chenqingxiang 来源: 博客园
相关推荐

2009-12-21 10:37:05

Ado.Net 实例

2009-12-25 09:25:54

ADO.NET实例

2010-01-04 13:16:31

ADO.NET命令

2009-12-23 14:07:09

ADO.NET实例对象

2009-12-22 11:17:58

ADO.NET产品

2009-12-31 16:09:22

ADO与ADO.NET

2009-12-21 14:39:09

ADO.NET技巧

2009-12-21 11:29:13

Ado.Net代码

2009-12-28 17:09:34

ADO.NET实例

2009-12-24 13:38:07

ADO.NET技术

2009-12-30 09:46:02

ADO.NET操作

2009-12-22 09:43:20

ADO.NET对象

2009-12-31 14:18:46

ADO.NET类库

2009-12-18 15:11:50

ADO.NET类

2010-01-04 13:56:50

ADO.NET应用程序

2010-01-04 11:02:06

ADO.NET组件

2009-12-18 16:28:35

ADO.NET结构

2009-12-29 16:33:35

ADO.Net Tea

2009-12-29 15:22:40

ADO.NET类库

2009-09-09 10:23:59

ADO.NET连接
点赞
收藏

51CTO技术栈公众号