频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

ADO.NET中的DataReader简介(2)

作者: 孟庆臣 出处:51CTO.com  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2006-12-25 16:43
关 键 词:.NET  ADO  DataReader
阅读提示:本文介绍了ADO.NET中的一个重要的对象DataReader,简单的举例说明了DataReader的使用方法。
 
2. DataReader的使用方法
 
DataReader是我要着重描述的部分,因为使用DataReader可以提高应用程序的性能,是将数据输出到表示层重要的手段。以DataReader为主的数据访问关系可以用下图表示:
 
 
在创建了一个Command对象之后,通过调用Command.ExecuteReader方法再创建DataReader对象,就能够使用Read方法从数据源检索记录集了。最后,需要着重指出的是在使用完DataReader后应该显式的关闭DataReader对象。下面的代码是使用SqlDataReader的样例,从罗思文数据库中进行简单数据查询。
 

Imports System Imports System.Data Imports System.Data.SqlClient Imports Microsoft.VisualBasic Public Class DataReaderSample Public Shared Sub Main() Dim sqlConn As SqlConnection = New SqlConnection

("data source=DBServer;initial catalog=Northwind; persist security info=True;user id=sa") Dim sqlCmd As SqlCommand = sqlConn.CreateCommand() sqlCmd.CommandText = "SELECT EmployeeID, LastName , FirstName FROM Employees" sqlConn.Open() Dim sqlReader As SqlDataReader = sqlCmd.ExecuteReader() Dim intFor As Int32 For intFor = 0 To sqlReader.FieldCount - 1 Console.Write(String.Format("{0,-20:G}", sqlReader.GetName(intFor))) Next Console.WriteLine() Do While sqlReader.Read() Console.WriteLine(String.Format("{0,-20:G}{1,-20:G}{2,-20:G}",

sqlReader.GetInt32(0), sqlReader.GetString(1), sqlReader.GetString(2))) Loop sqlReader.Close() sqlConn.Close() Console.Read() End Sub End Class

 
 
图表1:SqlReader执行的检索结果
 
同样的也可以让Command对象执行SQL批,从而检索多个记录集,此时调用DataReader的NextResult方法读取下一个SQL批产生的数据。
 

Imports System Imports System.Data Imports System.Data.SqlClient Imports Microsoft.VisualBasic Public Class DataReaderSample Public Shared Sub Main() Dim sqlConn As SqlConnection = New SqlConnection

("data source= DBServer;initial catalog=Northwind; persist security info=True;user id=sa") Dim sqlCmd As SqlCommand = sqlConn.CreateCommand() sqlCmd.CommandText = "SELECT EmployeeID, LastName ,

FirstName FROM Employees;SELECT CategoryID, CategoryName, Description FROM Categories" sqlConn.Open() Dim sqlReader As SqlDataReader = sqlCmd.ExecuteReader() Dim intFor As Int32 Dim blnNextResult As Boolean = False Do While Not blnNextResult For intFor = 0 To sqlReader.FieldCount - 1 Console.Write(String.Format("{0,-20:G}", sqlReader.GetName(intFor))) Next Console.WriteLine() Do While sqlReader.Read() Console.WriteLine(String.Format("{0,-20:G}{1,-20:G}{2,-20:G}", sqlReader.GetInt32(0), sqlReader.GetString(1),

sqlReader.GetString(2))) Loop Console.WriteLine() blnNextResult = Not sqlReader.NextResult() Loop sqlReader.Close() sqlConn.Close() Console.Read() End Sub End Class

 
 
图表2:SqlReader的SQL批执行的检索结果
 
3. 小结
 
这篇文字是面向初学者的,我想通过阅读它,让喜爱.NET的入门人士都会对ADO.NET和其中的DataReader有个大致的了解,并成功的编写出.NET代码。
 
(责任编辑 火凤凰 sunsj@51cto.com  TEL:(010)68476636-8007)


共2页: 上一页 [1] 2
【内容导航】
滚动新闻 术语词典 问题悬赏
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
· 未来游戏设计将要面临..
· 矩阵!Google Earth挑战..
· 能够改变IT格局的五大..
· WindowsMobile应该如何..
· 如何用正则删除不包含..
· Spring2 Hibernate3 Ju..
  · 多核处理器趋势对软件..
· 用PHP V5开发多任务应..
· 一种2D游戏引擎的设计..
· 利用AJAX和ASP.NET实现..
· [美国][喜剧][盲目约会..
· [09.28][美国][科幻][..
排行榜
·Java基础教程 (查看52473次)
·UML类图详解 (查看46951次)
·Java编程开发手册 (查看25172次)
·UML统一建模语言 (查看24155次)
·C#技术开发指南 (查看22515次)
·Java编程开发手册 (1195个砖)
·Java基础教程 (429个砖)
·C#技术开发指南 (304个砖)
·PB开发教程 (220个砖)
·.NET开发手册 (217个砖)
·Java编程开发手册 (653个好)
·Java基础教程 (569个好)
·.NET开发手册 (251个好)
·PB开发教程 (209个好)
·Delphi开发技术手册 (174个好)
·C++是垃圾语言?! (09月)
·2007年IT界七大抄袭事件 (09月)
·Java实用开发全集 (07月)
·J2EE实用技巧大全 (04月)
·开源框架Eclipse发展历程 (04月)
· 51CTO“十·一”特别专..
· 对应需求 如何选择最合..
· SPEC:AMD四核浮点性能..
· FB-DIMM、RDDR3谁是服..
· Avaya股东批准私募基金..
· 未来游戏设计将要面临..
· 微软发布全新FTP7.0
· 网络嗅探教程:用Sniff..
  · 能够改变IT格局的五大..
· 微软统一沟通系列视频..
· 专家教你理解ARP欺骗攻..
· 微软屈从用户PC厂商压..
· 企业如何对付DDoS攻击 ..
· 思科称三年后网真系统..
· 北京歌华出现网络故障 ..
· 苹果与黑客大斗法 破解..
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
专题
51CTO国庆充电专题之好书推荐
51CTO国庆充电专题之好书推荐
网络技术经典基础教程
网络技术经典基础教程
· 51CTO主编推荐经典专题
· RAID——磁盘阵列基础
· 充电计划之热门IT认证..
· 51CTO技术自测 挑战自..
· CISSP认证成长之路
· AMD Phenom三核处理器..
· 国际文档格式标准开战
· 2007年互联网大会
· 我是黑客我怕谁——讲..
· ARP攻击防范与解决方案
· Solaris 10 配置管理
· Solaris基础知识入门
· RIP路由协议专栏
· MPLS路由协议专栏
· OSPF路由协议专栏
· 思科路由器产品
Java编程开发手册
Java编程开发手册
Java基础教程
Java基础教程
· Java基础教程
· VPN技术
· ARP攻击防范与解决方案
· SQL Server 2005全解
· SOA 面向服务架构
· SQL Server 2005全解
· Java编程开发手册
· RAID——磁盘阵列基础
· 三层交换技术专题
· SQL Server入门到精通
· Windows Server 2003企..
· Windows远程桌面应用
· C#技术开发指南
· VPN技术
· Solaris 10 配置管理
· C#技术开发指南
Java编程开发手册
Java编程开发手册
Java基础教程
Java基础教程
· ARP攻击防范与解决方案
· VPN技术
· SQL Server 2005全解
· Java基础教程
· SQL Server入门到精通
· SQL Server 2005全解
· SOA 面向服务架构
· Java编程开发手册
· C#技术开发指南
· 三层交换技术专题
· C#技术开发指南
· Windows远程桌面应用
· RAID——磁盘阵列基础
· Windows Server 2003企..
· 邮件服务器专题
· wimax技术与趋势
专家
DB2 9技术资源中.. 推荐阅读  
·DB2 Viper快速入门
·DB2 9数据库的镜像分割与..
·将XML应用程序从DB2 8.x..
·DB2 9中的pureXML:如何..
51CTO.com编辑部.. 推荐阅读  
·服务器中的“傻瓜机”在..
·盖茨也喜欢登录Youtube看..
·
·
张振伦 的博客  
·拯救系统管理员
·美国选民:我为什么选布什
·VMware公司中文命名挑战赛
·我们真缺乏创新吗?
梁林 的博客  
·J0ker的CISSP之路:复习-..
·J0ker的CISSP之路:复习-I..
·9月第3周安全回顾 内网安..
·教你几招识别和防御Web网..
关键字阅读
频道精选
组网建网 安全频道
· NGN:下一代网络
· 网络访问中断大排查
· FTTx光纤接入
· 教你使用Anti ARP Sniff..
· 网络嗅探教程:使用Snif..
· 常见病毒手工清除方法大..
编程频道 前沿技术
· C++是垃圾语言?!
· 2007年IT界七大抄袭事件
· Java实用开发全集
· 解析Ajax开发框架 走进A..
· 基于Google Maps与Ajax..
· 基于Google Maps与Ajax..
操作系统 服务器
· 热门 IT 培训认证官方资..
· Ubuntu 中文开源频道
· Solaris基础知识入门
· 费力不讨好 数据中心主..
· AMD Phenom三核处理器解..
· 51CTO主编推荐经典专题
数据库 存储频道
· 甲骨文Oracle 11g正式发..
· Oracle数据库开发之PL/S..
· Oracle数据库开发基础教..
· 存储2006,一个并购的大..
· IDC宣布浪潮蝉联存储市..
· 双机热备技术
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有