如何在ADO中使用数据读取器(DataReader)读取数据
DbDataReader类型(实现IDataReader接口)是从数据源获取信息最简单也最快速的方法。
数据读取器是只读向前的效据流.井且一次返回一条记录。因此.只有当你向数据源提交 Select 查询语句的时候,数据读取器才有用。当你需要快速获取大批数据并且不需要在内存中存储它们的时候,数据读取器就非常有用了。比如.你想从表中取出2000条记录保存到文本文件.先用Dataset保存这些数据到内存中就非常不值得了(因为 Dataset同时在内存中保存整个结果)。
一个更好的方式是用数据读取器快速遍历每条记录。需要知道的是.数据读取器对象(不像数据适配器对象.后面会讨论它)会保持打开的连接.除非显式地关闭会话。
通过执行命令对象的 ExecuteReader()方法来获得数据读取器对象。数据读取器(DataReader)表示从数据库中读取的当前记录。它包含一个索引器方法 (如 C#中的[]语法),可以通过名称或从 0 开始的整数来访问当前记录中的列。
使用数据读取时获取单个结果集
using (SqlConnection cn = new SqlConnection()){cn.ConnectionString = @"Data Source=CLPDXX0076\SQLEXPRESS;" + "Integrated Security=SSPI;Initial Catalog=CarSYS";cn.Open();string sql = "select * from Person";SqlCommand cmd = new SqlCommand(sql, cn);using (SqlDataReader sr = cmd.ExecuteReader()){while (sr.Read()){//Console.WriteLine("ID:{0},Name:{1},Age:{2}", sr["ID"],sr["Name"],sr["Age"]);for (int i = 0; i < sr.FieldCount; i++){Console.WriteLine("{0}={1}", sr.GetName(i), sr.GetValue(i).ToString());}}}}
使用数据读取时获取多个结果集
using (SqlConnection cn = new SqlConnection()){cn.ConnectionString = @"Data Source=服务器名;" + "Integrated Security=SSPI;Initial Catalog=数据库名";cn.Open();string sql = "select * from Person;select * from Product";SqlCommand cmd = new SqlCommand(sql, cn);using (SqlDataReader sr = cmd.ExecuteReader()){do{while (sr.Read()){for (int i = 0; i < sr.FieldCount; i++){Console.WriteLine("{0}={1}", sr.GetName(i), sr.GetValue(i).ToString());}Console.WriteLine();}} while (sr.NextResult());}}
转载于:https://www.cnblogs.com/goodstudyqiiqi/p/10156892.html
如何在ADO中使用数据读取器(DataReader)读取数据相关推荐
- 如何在Elasticsearch中安装中文分词器(IK+pinyin)
如何在Elasticsearch中安装中文分词器(IK+pinyin) 如果直接使用Elasticsearch的朋友在处理中文内容的搜索时,肯定会遇到很尴尬的问题--中文词语被分成了一个一个的汉字,当 ...
- php模拟post提交json数据,如何在PHP中利用curl模拟post提交json数据
如何在PHP中利用curl模拟post提交json数据 发布时间:2021-02-05 16:30:19 来源:亿速云 阅读:63 作者:Leah 本篇文章为大家展示了如何在PHP中利用curl模拟p ...
- webgl 着色器_如何在WebAssembly中使用WebGL着色器
webgl 着色器 by Dan Ruta 通过Dan Ruta 在WebAssembly中使用WebGL着色器 (Using WebGL shaders in WebAssembly) WebAss ...
- python的loc函数_如何在pandas中使用loc、iloc函数进行数据索引(入门篇)
在数据分析过程中,很多时候我们需要从数据表中提取出我们需要的部分,而这么做的前提是我们需要先索引出这一部分数据.今天我们就来探索一下,如何在pandas中使用loc函数和iloc函数索引数据. 今天我 ...
- java 联合_如何在java中进行联合,相交,区分和反向数据
我想在Java中有联合,相交,差异和反向操作. 首先我有2个ArrayList< Integer> a = [0,2,4,5,6,8,10] b = [5,6,7,8,9,10] 一个工会 ...
- 手把手教你如何在WPF中应用VLC播放器
WPF中应用VLC播放器 *1. 在WPF的"引用:中点击右键,选择管理NuGet程序包,输入vlc,安装VLC.DOtNet.Wpf包 *2.在VLC官网下载VLC播放器,注意你的项目是3 ...
- 如何在JavaScript中创建RSS阅读器应用程序
RSS(真正简单的联合组织)是一种在线发布者用来将其内容联合到其他网站和服务的标准化格式. RSS文档 (也称为feed )是一种XML文档 ,其中包含发布者希望分发的内容. 几乎所有在线新闻网站和博 ...
- 如何在pandas中使用loc、iloc函数进行数据索引
二.使用iloc函数索引数据 (注意~iloc函数主要通过 行号 索引行数据) 而且,iloc函数索引的数据是int整型,因此是Python默认的前闭后开.注意只能说int型,也就是数字,输入字符的话 ...
- 如何在php中添加音乐播放器,window_Win10自带Groove音乐播放器怎么使用?,《Groove音乐》是微软在Win10系 - phpStudy...
Win10自带Groove音乐播放器怎么使用? <Groove音乐>是微软在Win10系统上推出的一款最新的音乐播放器,从而替代了之前的Xbox Music.而今天<Groove音乐 ...
- 天正lisp文件夹_如何在AutoCAD中从Windows资源管理器中打开图形文件夹位置
涵盖的产品和版本 AutoCAD 2002, AutoCAD 2004, AutoCAD 2005, AutoCAD 2006, AutoCAD 2007, AutoCAD 2008, AutoCAD ...
最新文章
- 新手也能立即上手,用Python90多行代码画出“樱花园”仙境(源码+注释)
- 最新开发android版本,Android版本检测升级
- 洛谷 数论入门相关题目--2022.01.22
- AD19原理图背景栅格去掉(改为纯色)
- 3.Web中使用iReport 整合----------创建PDF格式的
- Latex中导入VISIO图片
- python导出pdf_python生成pdf
- Markdown 全文检索
- 金蝶标准版的服务器文件,金蝶标准版服务器设置
- linux那些事儿之我是i2c -- Gsenser(三)
- 随手查_python
- 智慧校园人脸识别解决方案
- Tarjan算法小结1——SCC
- 计算机设计大赛志愿服务活动,中国大学生计算机设计大赛 | 志愿者招募
- php图片平铺,ThinkPHP5实现图片水印平铺效果
- python爬取豆瓣评论,并制作成词云
- 自媒体人怎么修改视频的MD5值,实现很好地搬运
- 推荐:在线面试实时编程工具——ShowMeBug
- Qt选择文件后获取路径并打开
- 数据驱动下的人性弱点
热门文章
- 机器学习(二)——xgboost(实战篇)Pima印第安人数据集上的机器学习-分类算法(根据诊断措施预测糖尿病的发病)
- pandas.errors.ParserError: Error tokenizing data. C error: EOF inside string starting at line xxx
- c语言水库抽样算法代码,LeetCode---蓄水池抽样算法
- printline在C语言中的作用,iswprint - [ C语言中文开发手册 ] - 在线原生手册 - php中文网...
- 怎么判断噎到没噎到_怎么判定股市是在走牛市还是走熊市呢?两种最简单的判定方法...
- Unity Animation和Animator的区别
- python语法学习第五天--lambda表达式、filter()、map()
- mysql的执行局计划
- C语言日字,【C语言日日练(二)】static关键字
- 三条中线分的六个三角形_初中数学:在三角形中辅助线添加规律归纳总结