DataReader对象的常用属性

一、DataReader对象的常用属性

DataReader对象提供了用顺序的、只读的体式格局读取*河蟹*mand对象获得的数据结果集。由于DataReader只执行读操作,而且每一次只在内存缓冲区里存储结果集中的一条数据,以是使用DataReader对象的效率比较高,如果要查询大量数据,同时不需要随机访问和修改数据,DataReader是优先的选择。

DataReader对象有以下常用属性:

1FieldCount属性:该属性用来暗示由DataReader得到的一行数据中的字段数。

2HasRows属性:该属性用来暗示DataReader是否包含数据。

3IsClosed属性:该属性用来暗示DataReader对象是否关闭。

二、DataReader对象的常用方法

一样,SQLServer Data Provider里的DataReader对象叫SqlDataReader,而在OLEDB Data Provider里叫OleDbDataReader

DataReader对象使用指针的体式格局来管理所连接的结果集,它的常用方法有关闭方法、读取记录集下一笔记录和读取下一个记录集的方法、读取记录集中字段和记录的方法,以及判断记录集是为空的方法。

一样,SQLServer Data Provider里的DataReader对象叫SqlDataReader,而在OLEDB Data Provider里叫OleDbDataReader

DataReader对象使用指针的体式格局来管理所连接的结果集,它的常用方法有关闭方法、读取记录集下一笔记录和读取下一个记录集的方法、读取记录集中字段和记录的方法,以及判断记录集是为空的方法。

1. Close方法

Close方法不带参数,无归回值,用来关闭DataReader对象。由于DataReader在执行 SQL命令时一直要保持同数据库的连接,以是在DataReader对象开启的状态下,该对象所对应的Connection连接对象不能用来执行其他的操作。以是,在使用完DataReader对象时,肯定是要使用Close方法关闭该DataReader对象,否则不仅会影响到数据库连接的效率,更会阻止其他对象使用Connection连接对象来访问数据库。

2. bool Read()方法

bool Read()方法会让记录指针指向本结果集中的下一笔记录,归回值是truefalse*河蟹*mandExecuteReader方法归回DataReader对象后,须用Read方法来获得第一笔记录;当读好一笔记录想获得下一下记录时,也能够用Read方法。如果当前记录已经是最后一条,挪用Read方法将归回false。也就是说,只要该方法归回true,则可以访问当前记录所包含的字段。

3. bool NextResult()方法

bool NextResult()方法会让记录指针指向下一个结果集。当挪用该方法获得下一个结果集后,依然要用Read方法来起头访问该结果集。

4. Object GetValue(int i)方法

Object GetValue(int i)方法根据传入的列的索引值,归回当前记录行里指定列的值。由于事先无法预知归回列的数据类型,以是该方法使用Object类型来接收归回数据。

5. int GetValues (Object[]values)方法

int GetValues (Object[]values)方法会把当前记录行里所有的数据生存到一个数组里并归回。可使用FieldCount属性来获知记录里字段的总额,据此定义接收归回值的数组长度。

6. 获得指定字段的方法

获得指定字段的方法有GetStringGetCharGetInt32,这些个方法都带有一个暗示列索引的参数,归回均是Object类型。用户可以根据字段的类型,通过输入列索引,别离挪用上述方法,获得指定列的值。

例如,在数据库里,id的列索引是0,通过

string id = GetString (0);

代码可以获得id的值。

7. 归回列的数据类型和列名的方法

可以挪用GetDataTypeName()方法,通过输入列索引,获得该列的类型。这个方法的定义是:

string GetDataTypeName (inti)

可以挪用GetName()方法,通过输入列索引,获得该列的名称。这个方法的定义是:

string GetName (int i)

综合使用上述两方法,可以获得数据表里列名和列的字段。

8. bool IsDBNull(int i)方法:

bool IsDBNull(int i)方法的参数用来指定列的索引号,该方法用来判断指定索引号的列的值是否为空,归回TrueFalse

DataReader对象只能对查询获得的数据集举行自上而下的访问,但效率很高。如果仅只是访问数据的话,可使用DataReader。但DataReader要求一直连接,以是将结果的一小部门先放在内存中,读完后再从数据库中读取一部门,相当于一个缓存机制。这对于查询结果百万级的情况来说,带来的好处是显而易见的。

DataReader对象其特点:访问数据速度快.占用资源少.只能显示数据一条一条的进取读取.必须显式地打开和关闭连接.

属性:

1:FileCount取得字段的个数

2:HasRows判断SqlDataReader是否包含一行或多行记录

3:IsClosed判断DataReader对象是否关闭状态

方法:

1:Read()归回SqlDataReader的第一条.并一条一条的向下读取

2:GetName()取得字段的名称

3:GetDataTypeName()取得字段的数据类型

4:GetValue()取得字段的值

5:Close ()关闭DataReader对象

6:GetOrdinal()查询字段地点位置

7:GetValues ()把所有查询记录数据赋于数组

8:IsNull()判断字段是否为null

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值