博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MSSQL - SqlDataReader
阅读量:4636 次
发布时间:2019-06-09

本文共 1126 字,大约阅读时间需要 3 分钟。

DataReader对象:

·DataReader对象是一个读取行的只读流的方式,绑定数据时比使用数据集方式性能要高,因为他是只读的,所以如果要对数据库中的数据进行修改就需要借助 将所做的修改保存到数据库。

·DataReader对象不能直接实例化,必须借助与其相关的Command对象来创建实例,例如用SQLCommand的实例的ExecuteReader()方法可以创建sqlDataReader实例。

·因为DataReader对象读取数据时需要与数据库保持连接,所以在使用完DataReader对象度去玩数据之后应该立即调用它的Close()方法关闭,并且还应该与之相关的Connection对象。

 

DataReader读取数据:

·一种是按照查询的时候列的索引用指定的方式和数据格式来读取列值,无需相应的转换,缺点是如果数据不能转换成相应的格式就会抛出异常。

sqlDataReader reader; //实例化一个sqlDataReader对象。
reader.GetInt(0); //因为第一列的数据的类型是Int所以使用GetInt().
reader.GetString(1); //因为第二列的数据的类型是String所以适应GetString().

·第二种方式就是按照索引的方式读取,在读取的时候并不进行值转换,这样得到的值是一个object类型的值,还需要根据数据库里面的字段进行相应的转换。

sqlDataReader reader; //实例化一个sqlDataReader对象。
reader[0]; //读取第一列,读出的数据类型是object类型。
reader[1]; //读取第二列,读出的数据类型是object类型。

·最后一种是按照列名的方式去读,并且在读的时候也不进行相应的转换,的到达额是object类型的值,灵活性强。
sqlDataReader reader; //实例化一个sqlDataReader对象。
reader["UserId"]; //读取列名为“UserId"一列的数据。

::就灵活性来说,第三种最灵活,第二种次之,第一种不灵活;就性能来说第一种最高,第二种稍次,第三中最低。

 

 

零碎知识点:

SQLDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
** 使用CommandBehavior.CloseConnection的作用是,当关闭reader的时候,会直接关闭数据连接。

 

转载于:https://www.cnblogs.com/KTblog/p/4549311.html

你可能感兴趣的文章
clientcontainerThrift Types
查看>>
链接全局变量再说BSS段的清理
查看>>
hdu 1728 逃离迷宫
查看>>
HTML5与CSS3权威指南之CSS3学习记录
查看>>
docker安装部署
查看>>
AVL树、splay树(伸展树)和红黑树比较
查看>>
多媒体音量条显示异常跳动
查看>>
运算符及题目(2017.1.8)
查看>>
React接入Sentry.js
查看>>
ssh自动分发密匙脚本样板
查看>>
转 小辉_Ray CORS(跨域资源共享)
查看>>
Linux安装postgresql
查看>>
MyBatis启动:MapperStatement创建
查看>>
Tomcat 调优及 JVM 参数优化
查看>>
【kindeditor】KindEditor获取多个textarea文本框的值并判断非空
查看>>
【 全干货 】5 分钟带你看懂 Docker !
查看>>
[转]优化Flash性能
查看>>
【大话设计模式】——浅谈设计模式基础
查看>>
popStar手机游戏机机对战程序
查看>>
hadoop2.4.1集群搭建
查看>>