OleDbDataReader 类提供了一种从数据源读取数据记录只进流的方法。如果想使用 SQL Server 7.0 或者更高版本,请参考文章:使用 SQL Server 检索数据
 
OleDbCommand 调用 ExecuteReader 方法创建 OleDbReader,不通过直接使用构造器创建。当 OleDbDataReader 正在使用时,关联的 OleDbConnection 处于对 OleDbDataReader 服务挂起状态 。在这个状态下,除非关闭 OleDbConnection 的连接,没有其他操作可以执行。在调用 OleDbDataReader 的 Close 方法之前,会一直保持这种状态。
 
OldDbDataReader 提供一种从 OleDb 数据源读取数据记录只进流的手段。更多交互操作,例如:Scrolling、Filtering、Navigating、Romoting,等等,请使用 DataSet。 
 
这个例子,利用 OLE DB .NET 数据提供程序,创建了到 Northwind 库的 OleDbConnection 连接。OleDbCommand 从 Employee 表选择数据项,然后利用 OleDbCommand 的 ExecuteReader 方法执行查询。命令的结果传递给 OleDbDataReader。
 
示例1:
 
            OleDbDataReader myDataReader = null;
OleDbConnection myConnection = new OleDbConnection("server=(local);Integrated Security=SSPI;database=northwind;provider=SQLOLEDB");
OleDbCommand myCommand = new OleDbCommand("SELECT EmployeeID, LastName, FirstName, Title, ReportsTo FROM Employees", myConnection); myConnection.Open();
myDataReader = myCommand.ExecuteReader();
这个例子,使用 OleDbDataReader 的 Read 方法读取数据并且把数据项输出到控制台程序。
 
示例2:
 
            while (myDataReader.Read())
{
Console.Write(myDataReader.GetInt32() + "\t");
Console.WriteLine(myDataReader.GetString() + " " + myDataReader.GetString() + "\t");
Console.WriteLine(myDataReader.GetString() + "\t"); if (myDataReader.IsDBNull())
Console.WriteLine("N/A\n");
else
Console.WriteLine(myDataReader.GetInt32() + "\n");
}
最后,这个例子关闭 OleDbDataReader,然后是 OleDbConnection。
 
示例3:
 
            // 当读取完成时,调用 Close 方法
myDataReader.Close(); // 关闭连接
myConnection.Close();
总结:
1、OleDbDataReader 用于快速地从数据源读取数据记录只进流。
2、请记住,关闭 OleDbReader,然后是 OleDbConnection。
3、请记住,如果 OleDbDataReader 正在使用,关联的 OleDbConnection 处于对 OleDbDataReader 服务挂起状态。在关闭 OleDbConnection 连接以前,没有任何与之的操作可以执行。
原文链接:

ADO.NET 快速入门(十三):使用 OLE DB 检索数据的更多相关文章

  1. ADO.NET 快速入门(十):过滤数据

    我们有很多方法来过滤数据.一种是在数据库命令级别,利用 where 子句查询过滤数据.另一种是在数据填充到 DataSet 以后过滤数据.本篇讨论后者.   一旦数据填充到 DataSet,你可以使用 ...

  2. ADO.NET 快速入门(十四):使用 SQL Server 检索数据

    SqlDataReader 类提供了一种从数据源读取数据记录只进流的方法.如果想使用 OLE DB 接口的数据库或者 SQL Server7.0 之前的版本,请参考文章:使用 OLE DB 检索数据. ...

  3. ADO.NET 快速入门(四):从数据库填充 DataSet

    从数据库获取数据很容易,处理数据更容易.如果想要从数据库获取只进.只读的数据流结果集,你可以使用 DataReader 执行命令并且检索它.关于如何使用 DataReader,请参考:使用 OLE D ...

  4. ADO.NET 快速入门(一):ADO.NET 概述

    ADO.NET 概述 ADO.NET是改进的ADO数据访问模型用于开发可扩展应用程序.他是专门为可伸缩性.无状态和XML核心的web而设计的.   ADO.NET使用一些ADO对象,如Connecti ...

  5. IdentityServer4 中文文档 -16- (快速入门)使用 EntityFramework Core 存储配置数据

    IdentityServer4 中文文档 -16- (快速入门)使用 EntityFramework Core 存储配置数据 原文:http://docs.identityserver.io/en/r ...

  6. ADO.NET 快速入门(七):使用数据库事务

    数据库事务用于控制数据提交到数据库.例如,在标准的账户程序,账户的借贷必须同时完成.由于电脑偶尔发生故障(电力中断.网络中断,等等),可能有些记录被更新或者添加,但是另外一些没有.为了避免这些情况,可 ...

  7. ADO.NET 快速入门(十五):ADO 应用转换为 ADO.NET

    这是一个已经移植到 .NET 的 ADO 应用的例子.也演示了单向.只读.快速 DataReader 的使用.它演示如何使用 DataView 类从 DataSet 获取一个 Table 和 操作一个 ...

  8. ADO.NET 快速入门(八):处理 Errors

    除了 Try/Catch 和 Exceptions 以外,新的 ADO.NET 数据框架也允许在 DataSet 的每行数据添加错误信息.如果 Updates 或者其他操作失败,SqlDataAdap ...

  9. ADO.NET 快速入门(六):读写 XML

    ADO.NET 和 DataSet 可以读写 XML Schema 和 XML.获取更多信息,请参考 How do I...Use XML and the DataSet?   DataSet 的 S ...

随机推荐

  1. ti processor sdk linux am335x evm /bin/setup-package-install.sh hacking

    #!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-package-install.sh hacking # 说明: # 本文主要对T ...

  2. Android下高斯模糊的算法和demo

    采用纯java和RenderScript两种方式来做高斯算法. 也可以用NDK来做,想试试的可以参考: http://stackoverflow.com/questions/2067955/fast- ...

  3. css的框架——global.css

    global.css,一般这个css文件是用于装全站主要框架css样式代码. “global”翻译为全局.全部.从翻译中大家也能理解global.css用于做什么.大站常常用于装全站公共的CSS样式选 ...

  4. 【转】错误日志ID8021来源BROWSER导致电脑死机

    现场工控机死机,网上查了篇文章,具体原因还有待分析,下面是图 在这里有必要介绍两个ID号:6006和6005.在事件查看器里ID号为6006的事件表示事件日志服务已停止,如果你没有在当天的事件查看器中 ...

  5. POJ 1173 Find them, Catch them

    题意:有两个帮派,每个人只属于一个帮派,m次操作,一种操作告诉你两个人不是一个帮派的,另一种操作问两个人是不是在一个帮派. 解法:并查集+向量偏移.偏移量表示和根节点是不是同一帮派,是为0,不是为1. ...

  6. poj1247 bjfu1239水题

    其实就是读题啦,读懂题很简单,就是问一个数组,存不存在一个点,按这个点切成两半,这两半的数字的和是一样的.不多说了,上代码 /* * Author : ben */ #include <cstd ...

  7. 白盒测试之gtest第一个demo

    认识gtest工具后,关于它的使用,下面将用一个demo程序演示一下gtest的用法以及成果展示. 一.需要测试的C++代码: #include "myfunction.h" // ...

  8. nginx+tomcat反向代理下使用tomcat-redis-session-manager进行session共享中值得注意的一个问题

    公司目前项目使用nginx反向代理+多个tomcat进行负载均衡,之前使用ip_hash策略进行session控制.近期有考虑不再使用ip_hash策略,所以需要进行session共享. 根据项目实际 ...

  9. 前言:关于nagios监控

    前言,关于nagios监控. 这段时间一直在做关于nagios监控,不停的做实验,从而也忽略了书写这方面,今天写一份安装文档花了四个多小时,看来写文档也是一件很麻烦的事情,不过,做过的事情还是需要留下 ...

  10. 对Struts的理解

    1.struts是一个按MVC模式设计的Web层框架,其实他就是一个大大的servlet,这个Servlet名为ActionServlet,或是ActionServlet的子类.我们可以在web.xm ...