说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

.NET中DataSet和DataReader的区别与转换

HTML文档下载 WORD文档下载 PDF文档下载
介绍了.NET中DataSet和DataReader的区别,以及如何将DataReader转换到DataSet

 

区别:

DataReader:和数据库处于一直连接状态。只读只能向前读取,一次只能读取一行信息。内存占用少,高效率! 

Dateset:和数据库是断开的离线状态。返回都是数据集,可以对其中的数据做任意操作,内存占用多,效率稍低。

 

选择使用DataReader的情形: 

1)不需要缓存数据。 

2)要处理的结果集太大,内存中放不下。 

3)一旦需要以仅向前、只读方式快速访问数据。

 

 

DataReader转换到DataSet

 

public static DataSet ConvertDataReaderToDataSet(SqlDataReader reader) { DataSet dataSet = new DataSet(); do { // Create new data table DataTable schemaTable = reader.GetSchemaTable(); DataTable dataTable = new DataTable(); if ( schemaTable != null ) { // A query returning records was executed for ( int i = 0; i < schemaTable.Rows.Count; i++ ) { DataRow dataRow = schemaTable.Rows[ i ]; // Create a column name that is unique in the data table string columnName = ( string )dataRow[ "ColumnName" ]; //+ " // Add the column definition to the data table DataColumn column = new DataColumn( columnName, ( Type )dataRow[ "DataType" ] ); dataTable.Columns.Add( column ); } dataSet.Tables.Add( dataTable ); // Fill the data table we just created while ( reader.Read() ) { DataRow dataRow = dataTable.NewRow(); for ( int i = 0; i < reader.FieldCount; i++ ) dataRow[ i ] = reader.GetValue( i ); dataTable.Rows.Add( dataRow ); } } else { // No records were returned DataColumn column = new DataColumn("RowsAffected"); dataTable.Columns.Add(column); dataSet.Tables.Add( dataTable ); DataRow dataRow = dataTable.NewRow(); dataRow[0] = reader.RecordsAffected; dataTable.Rows.Add( dataRow ); } } while ( reader.NextResult() ); return dataSet; }

 

 

又一美国造?联想在美设厂制造产品 软件定义未来 2013 SDCC中国软件开发者大会全面开启 可以直接拿来用的15个jQuery代码片段 程序员最害怕的5件事 你中招了吗? 机器智商已达四岁:亲,是时候考虑你的饭碗了 读60行代码完成的NoSQL数据库,看数据库打造面临的挑战 聚焦全球移动市场:韩国,开放之后是春天? Github 终于开始认真考虑开源项目许可证了 雅虎发布今年第二季度财报 总营收为11.35亿美元 既然无法避免被GAE锁定,何不考虑其中的机遇并自力更生 19亿美金背后的分析:91为什么要卖?百度为什么要买? 直接拿来用!最火的iOS开源项目(三) 让代码飞一会儿,超级有用的CSS编码工具集 创业者如何在Demo演讲上打动投资人? 微软小打小闹的移动版Outlook Web App,会不会被用户抛弃? 哪门编程语言影响力最大? 微软启动“Companion Web”计划 可互连多屏幕设备 让你望而却步的密码管理服务已获得100万美元的种子基金 SDCC 2013开始公开征集讲师和演讲主题 不用图片和JS,照样创建绚丽的动态CSS3菜单 是福还是祸?开发者饱经风雨的内心独白 设计师/开发者看过来,七月35款新工具速递! Hadoop进军机器学习:Cloudera收购Myrrix共创“Big Learning” 张民杰:三人团队的OpenStack机会 White Elephant:开发者必备的Hadoop利器 不及分析师预期:微软第四季财报揭晓 净利49.7亿美元 Facebook收购英国手机代码验证公司Monoidics Apache基金会废弃其C++标准库 鲍尔默宣称微软有一百万台服务器,这个数字真的靠谱吗? 全球6000开发者:iOS、Android、WP最痴情谁? 提升网站知名度的十大方法 【 http://www.esoftware.com.cn/search.php?condition=%BA%AB%C1%F7%C0%B4%CF%AE&page=1&mode=3 】 JBuilder的使用问题 在VFP中,编程执行SQL语句时,怎样使系统的查询结果不出现? 一个程序流程的问题 为什么当我的SpeedButton的enabled为false时,上面的图标就没有了? 囡囡(baicolt)请进,问你一点事情 简单问题,请赐教 高分相赠!!!:操作系统和SQL SEVER2000都是英文版,用VB连接如何可以正确的输入和显示中文? 则么在程序中得到sql的存储过程的返回值? 请问 VB 6.0 有没有最新的升级文件之类的东西?高分争解 谢谢 谁有用java做的复杂一点的图行界面的例子 网管来看看,为什么不能给分了!右边的文本框又不见了! 各位用 VB 编程都用那些辅助工具? 高分争解 关于ShellExecute 装了redhat7,在/etc里没有inetd.conf文件,谁见过这咋整 菜鸟请教大侠!很急!谢谢!!只有10分对不起! 请问一个关于CLASSWIZARD 的问题 这里有PB反编译程序,你信吗? 怎样解 关于大数据量的问题,经验丰富者里面谈! 我想在程序里控制程序外的浏览器窗口资源管理器窗口,怎么做呢?急呀!!!!!! 请问:我用JavaMail收下的邮件主题,发信人姓名不能正常显示。。。。。 认识我的人都进来跟我聊聊吧,我最近新换了工作,还没有适应,你们各位是怎么换工作? 请问如何在Delphi中表示二进制,或者十六进制数呢? 各位35以后干什么?我们能干什么? ????? 如何将eltree中的数据和某数据表关联 有没有比RECORDCOUNT快的方法实现同样的功能? 鉴于目前有些东西说话不知轻重,把这个旧闻再贴一遍,不要以为真的在网上 “没人知道你是一只狗” Java 工具 怎样解决vb中编译成exe文件中出现的问题? 你别说国企,只要是沾的国企的气味就他妈的黑! api函数我不懂。 我要开发一个网络监听的程序,捕获所有以太网中所有的帧,象NT和Win2000中的网络监视器一样 找了半天,看不到一个熟人,认识的过来报到 请问哪里有下载jdk啊? 问题征集算法 偶烦!偶郁闷!咿呀~~~~~~~~老哥进来安慰偶。。。。快!快!快!!! 在ListView中,如何象Windows资源管理器那样将剪贴了的文件图标变虚? 清华大学的学生素质真差 打开数据库为什么出错? WinCE的串口通讯读和写之间有相互制约的问题吗? 强烈抗议IBM蓝色“快”车服务的速度和质量!!各位同志请帮我广帖出去! outlook 求助 jsp的小问题 关于cjlib中显示中文的问题 山东快书 《武松上网》 送给大家一张图片,开开心心灌水,快快乐乐上班 各位高手,老题新问 请教Win2000下SetWindowsHookE的问题 odbc和ado是一回事吗? 你认识DCU吗? 氢化钙 钙鉴别能用与水反应生成的氢气的量吗物质的量相同 只用一种试剂一次性就能验证锌、铜、银三种金属活动性强弱,该试剂为( )A 硫酸铜溶液 B 硫酸锌溶液 C 硝酸银溶液 D 稀盐酸 铜和硝酸汞反应的方程式 为什么登山制取氢气用氢化钙而不电解水?制取同等质量的氢气需要的水的质量要比氢化钙要少,负担更少,而且电解水还能产生氧气,为社么登山制取氢气用氧化钙而不电解水? 要验证锌、铁、铜三种金属的活动顺序,可选用(?),为什么?A.Cu.FeCl2.Zncl2B.Fe.CuSO4.ZnCl2C.Zn.CuO.FeSO4D.Fe.Cu.ZnCl2那如果是:A.Fe、Cu、Zn(NO3)2溶液。B.Cu、FeCl2溶液、ZnCl2溶液C.Zn、CuSO4溶液、FeSO4溶液 铜与硝酸汞溶液能不能发生反应,若是能写出化学方程式,若是不能 化学题设计个过氧化钠的小实验过氧化钠保存不当容易变质1,某过氧化钠样品已经部分变质,请设计实验,限用一种溶液,证明过氧化钠已经变质2,检验样品中还有过氧化钠的方法是都回答得很好 1 能用于证明锌 铜 银的金属活动性顺序的一组试剂是()A 铜 银 硝酸锌溶液 B 锌 银 硝酸铜溶液 稀硫酸 C 锌 铜 稀硫酸 硝酸银溶液 D 锌 铜 银 稀硫酸 我认为b c都行,1 能用于证明锌 铜 银的金属 铜和硝酸汞溶液反应的方程式还有三氧化硫和水反应,氧化钙和水反应,氧化钠和水反应,碳酸银和稀硝酸反应的方程式 设计试验(化学)现在就要!1.设计试验证明二氧化碳具有下述性质:(1)二氧化碳的密度比空气的大;(2)二氧化碳能溶与水.2.设计实验证明汽水中含有二氧化碳.(别太复杂) 甲同学为探究铝、铁和铜三种金属的活动性、甲同学为了探究铝、铁和铜三种金属的活动性,他用铜丝、铁丝、铝丝和稀盐酸四种试剂,设计了以下只用一支试管,取一次盐酸的探究方案.⑴请你 铜与硝酸汞溶液反应是的主要现象 化学设计实验现有一白色粉末是由氯化钠、硫酸钠中的一种或两种共同组成.给你四种溶液:硝酸银溶液、氢氧化钠溶液、碳酸钠溶液、硝酸钡溶液,要你证明此粉末只由硫酸钠组成(两步). 为测定铁.铜和银的金属活动性顺序,下列不能达到目的的是:A Ag、Fe、CuSO4溶液B Ag、FeSO4、CuSO4溶液C Fe、Cu、AgNO3溶液D Cu、FeSO4、AgNO3溶液原因 正确答案我知道 是 B、C 铜和硝酸汞溶液发生反应的问题.铜和硝酸汞溶液反应后生成硝酸铜溶液和汞,但问题是这个置换出来的汞会粘在铜片上,并且拿纸都擦不掉!常温下汞不是液态吗?并且把铜片拿出后过了一段时 求5篇化学家庭实验 实验报告拜托各位高手帮我找5篇家庭小实验的实验报告包括目的.步骤.现象.结论注意:要是家里能做的实验.最好是收集沼气,、葱汁写密信、收集沼气.要5篇啊,谢谢如果 下列各组物质能证明铁 银 铜的金属活动性强弱的是A 铁 硫酸铜溶液 硝酸银溶液 B 铁 铜 硝酸银溶液C 银 铜 氯化亚铁溶液 D 铁 银 硫酸铜溶液不然我还是不会做 铜与硝酸汞反应,生成的汞是固体吗,为什么 利用下列各组反应,能够验证铁、铜、银三种金属活动性顺序的是利用下列各组物质之间的反应,能够验证铁、铜、银三种金属活动性顺序的是( ) A、氯化亚铁溶液、铜、银 B、氯化亚铁溶液、 小刚设计实验探究铁、铜、银三种金属的活动性顺产并分析相关问题.请填空: ⑴他设计的四种实验方案 什么金属既能与稀硫酸反应生成氢气,又能与硝酸汞反应生成汞 A.银 B.钠 C.镁 D.铜 利用下列各组物质之间的反应,能够验证铁、铜、银三种金属活动性顺序的是(  )A、氯化亚铁溶液、铜、银B、氯化亚铁溶液、氯化铜溶液、银 C、铁、氯化铜溶液、银 D、氯化铁溶液、铜 验证铜 镁 铁 金属活动性的实验? 铜和硝酸汞能反应吗 利用下面各组物质之间的反应,能够验证铁,铜,银三种金属活动性顺序的是( )A.氯化亚铁溶液,铜,银B.氯化亚铁溶液,氯化铜溶液,银C.铁,氯化铜溶液,银D.氯化铁溶液,铜,硝酸银溶液我觉得应 证明镁,锌,铁,铜,银的活动性顺序实验设计这个实验的过程,与结论 硝酸银化学式 设计实验关于判断铝铁铜的金属活泼性强弱顺序4种方案 用实验证明锌和铜两种金属的活动性顺序时,可选用的试剂是用稀硫酸好还是用氯化锌好 氯化锰加硝酸银化学式!求氯化锰加硝酸银的化学式我的意思是氯化锰和硝酸银的反应化学式 什么试剂能直接验证铝 铁 铜的活动性顺序 辨别金属活动性的实验:铁铜锌 铜和硝酸银化学式?999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 证明铁、铝、铜三种金属的活动性顺序,选用哪些试剂?A 盐酸、硝酸银溶液B 盐酸、氯化亚铁溶液C 硝酸、硝酸铜溶液D 氯化镁溶液、硫酸铜溶液为什么? 无机化学题 解释 分别在 硝酸汞溶液和硝酸亚汞溶液中 逐滴滴加钾碘化钾,(1)分别有什么现象(2)当碘化钾 过量时,有分别有什么现象. 自来水加硝酸银的化学式是什么? 铝、铁、铜是人类广泛使用的三种金属,与我们生活息息相关.3)用下列试剂验证这三种金属的活动性顺序,能达到目的是 (填序号). A.硫酸铝溶液 B.硫酸亚铁溶液 C.硫酸铜溶液 选什 硝酸汞中汞的化合价是多少? 硝酸银的化学式是什么? 为验证铁、铜、铝三种金属的活动性顺序,可选用的一组物质是(  )A.FeSO4溶液、Cu、AlCl3溶液B.CuSO4溶液、Fe、AlC13溶液C.CuSO4溶液、Fe、AlD.AlCl3溶液、Fe、Cu我知道答案是B,我想知道C为 下列各金属分别投入硝酸汞溶液中,不能置换出汞的是()下列各金属分别投入硝酸汞{Hg(NO3)2}溶液中,不能置换出汞的是( )A.Zn锌B.Fe铁C.Ag银D.Cu铜另外原因是什么?它们的活动性由强到弱怎样 硝酸银的化学式 怎样证明铝、铁、铜三种金属的化学活泼性大小,解释为什么这三种金属只有铁最容易生锈. 在硝酸汞中汞显几价,关于这个化合价的取值有什么特殊规律吗?还有我是在写化学式的过程中出现的问题不能按化学式为零的方法算啊,我是说,在写化学方程式的过程中如何判断有多价的 铁跟硝酸银反应化学式 设计实验探究铝和铜的金属活动性大小顺序要实验的具体步骤材料:硫酸铜,铝片,试管……(是先放硫酸铜进试管还是先放铝片?) 铜与硝酸汞反应的现象 铝与硝酸银溶液发生反应的化学式 用Fe,ZnSO4溶液,CuSO4溶液,验证锌、铁、铜三种金属活动性顺序,可不可以? 加热铜丝的现象 硝酸银溶液的化学式如何写? 现象和变化的区别 铜是金属活动性弱的金属,那么怎么配置硫酸铜溶液 铜丝加热后的现象请问铜丝加热后会有什么现象? 登上运动员用氢化钙CaH2固体提供能源有什么优点 验证铝和银的金属活动性顺序用稀盐酸还是硫酸铜?这俩不都行吗? 铜丝在空气中燃烧现象 能否用燃烧现象鉴别氢化钙和钙? 铝和硫酸铜溶液反应Al+CuSO4+H2O=?不是置换反应,是生成沉淀的那种 氯气与铜丝反应现象
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn