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. uestc 1720无平方因子数

    求素数 然后容斥原理// n之内有平方因子的数的个数sum =n/(2^2) + n/(3^2)+……+n/(k^2) - n/(2^2 * 3^2)-……+……. // #pragma commen ...

  2. zoj 2286 Sum of Divisors

    // f(n)表示 n的约数和 不包括自己// 给你一个m 求1 到 100万里面 f(n)<=m 的个数// 那么首先要用筛选求出所有出 f(n)// 然后就好办了 // 写好后 看见别人好快 ...

  3. liux下ftp链接服务器的常用命令

    FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作系统下使用 FTP,都会遇到大量的FTP内部命令.熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍 ...

  4. duilib修复ActiveXUI控件bug,以支持flash透明动态背景

    转载请说明原出处,谢谢~~ 昨天在QQ控件里和同学说起QQ2013登陆窗体的开发,从界面角度考虑,单单一个登陆界面是很容易做出来的.腾讯公司为了 防止各种盗号行为可谓煞费苦心,QQ2013采用了动态背 ...

  5. bzoj 2959 长跑(LCT+BCC+并查集)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2959 [题意] n个点,提供操作:连边,修改点权,查询自定义边的方向后起点a终点b能经 ...

  6. 使用MATLAB生成模糊控制的离线查询表

    1.打开模糊控制工具箱,编辑输入输出变量的隶属度函数和模糊控制规则,如下图所示,导出为fuzzy_control.fis文件. 2.打开Simulink模块,建立下图所示的系统框图,两输入,一输出,处 ...

  7. Maven解决Missing artifact com.sun:tools:jar:1.5.0错误

    <dependency> <groupId>com.sun</groupId> <artifactId>tools</artifactId> ...

  8. 开源项目SuperSocket的学习笔记

    近几日想在一个项目中引进一个Socket Server,用来接收客户端发送的命令消息并根据具体的业务逻辑对消息进行处理,然后转发给其它在线的客户端.因为以前在博客园关注过江大渔开源的SuperSock ...

  9. The solution to Force.Com IDE 29.0 PassWord Problem

    我最近使用Force.com IDE 时,经常提示密码错误.从Google 中终于发现一个解决方法,分享给大家,以供大家参考. 在Force.com IDE  29.0中,IDE 存储我们开发Org ...

  10. JAVA——利用wait和notify实现生产者和消费者

    经典的消费者和生产者的的实现: 注意事项: 1:在循环里面用wait(),因为当线程获得了锁,但是有可能还没有满足其他条件: 2:公用的缓冲池要用锁机制: package demo; import j ...