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. Java [Leetcode 144]Binary Tree Preorder Traversal

    题目描述: Given a binary tree, return the preorder traversal of its nodes' values. For example:Given bin ...

  2. UVa 11729 Commando War 突击战

    你有 n 个部下,每个部下需要完成一个任务.第 i 个部下需要你花 Bi 分钟交待任务,然后他会立刻独立地.无间断地执行 Ji 分钟后完成任务.你需要选择交待任务的顺序,使得所有任务尽早执行完毕(即最 ...

  3. 总结mysql服务器查询慢原因与解决方法

    本文针对MySQL数据库服务器查询逐渐变慢的问题, 进行分析,并提出相应的解决办法,具体的分析解决办法如下: 会经常发现开发人员查一下没用索引的语句或者没有limit n的语句,这些没语句会对数据库造 ...

  4. 【转】u盘不显示盘符

    转自http://jingyan.baidu.com/article/f3ad7d0fd0793e09c3345b31.html 我的情况: 电脑只有一个c盘,插入u盘,u盘的盘符为d. 弹出u盘,但 ...

  5. java web 学习十六(JSP指令)

    一.JSP指令简介 JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分. 在JSP 2.0规范中共定义了三个指令: pa ...

  6. UVA 11600-Masud Rana(状压,概率dp)

    题意: 有n个节点的图,开始有一些边存在,现在每天任意选择两点连一条边(可能已经连过),求使整个图联通的期望天数. 分析: 由于开始图可以看做几个连通分量,想到了以前做的一个题,一个点代表一个集合(这 ...

  7. [Irving]字符串相似度-字符编辑距离算法(c#实现)

    编辑距离(Edit Distance),又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数.许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字 ...

  8. Webdriver API (三)- actions

    Actions类主要定义了一些模拟用户的鼠标mouse,键盘keyboard操作.对于这些操作,使用perform()方法进行执行. actions类可以完成单一的操作,也可以完成几个操作的组合. 有 ...

  9. linux 配置 Samba 服务器实现文件共享

    1. 下载samba yum install samba 2. 启动samba 服务 service smb start 3.配置samba 打开/etc/samba/smb.conf 写入一下内容 ...

  10. 五指cms内容浏览量实现方法

    实现功能:文章浏览量的统计显示 实现的详细:对文章的总浏览量.当天浏览量.当周浏览量.当月浏览量进行统计 实现代码位置:coreframe/app/content/stat.php 实现的详细代码: ...