ADO.NET常用对象详解之:DataReader对象
1.DataReader对象概述
DataReader对象只能对查询获得的数据集进行自上而下的访问,但效率很高。如果仅仅是访问数据的话,可以使用DataReader。但DataReader要求一直连接,所以将结果的一小部分先放在内存中,读完后再从数据库中读取一部分,相当于一个缓存机制。这对于查询结果百万级的情况来说,带来的好处是显而易见的。
DataReader对象有如下几个特点:
1.快速访问数据。由于DataReader对象是只进和只读的,所以开销相对较小,速度比DataSet快。
2.只进和只读。不能处理数据,只能显示数据。
3.自己管理连接。DataAdapter对象可以自动地打开和关闭连接,DataReader对象必须显式地打开和关闭连接。
4.使用较少地服务器资源。
2.创建DataReader对象
具体步骤:
(1)创建和打开数据库连接。
(2)创建一个Command对象。
(3)从Command对象中创建DataReader。
(4)执行ExecuteReader对象。
(5)使用DataReader对象。
(6)关闭DataReader对象。
(7)关闭Connection对象。
DataReader对象创建示例
当使用DataReader对象进行连接时,需要使用Try...Catch...Finally语句,这样可以确保若在某方面失败,连接将会关闭。否则,连接会无限期保持打开状态。
捕捉错误
3.从DataReader读取数据
为每个记录调用Read方法:可以调用Read方法来访问DataRead对象中的一个记录,因为DataReader对象中的默认位置是在第一个记录的前面,所以必须在访问任何数据之前调用Read方法。当不再有可用记录时,Read方法就返回一个空值。
调用Read方法示例
访问字段:可以通过顺序位置,名字或者调用适当的Get方法来访问一个字段,Get方法包括GetDateTime,GetDouble,GetInt32或GetString等。
调用Get方法来访问数据
通过名字引用当前记录的数据字段