数据库基础3

六、DataReader对象

        DataReader用于从数据源提取向前并且只读的数据流,提供了一种高效的数据读取方式。DataReader所提取的数据流一次只能处理条记录,而不会将所有的记录同时返回,可以避免耗费大量的内存资源。

如果要创建SqlDataReader对象或OleDbDataReader对象,必须用Command对象的ExecuteReader方法而不能直接使用构造函数。在使用DataReader对象是,相关联的Connection对象忙于DataReader对象服务,此时不能对Connection执行任何其他操作,直到持续到关闭DataReader对象。

 

七、浏览数据表中的数据

         ADO.NET中没有游标的概念,相应的也没有当前记录的概念,这样做为了减少对服务资源的占用,从而提高效率。要改变数据表中当前位置,需要使用BindingContext类。

Windows窗体中的控件所绑定的任何一个数据源都会拥有一个相关的CurrencyManager对象,通过CurrencyManager对象便能浏览数据源中的数据记录。

CurrencyManager对象中两个重要的属性

1Position属性。数据绑定机制通过这个属性来确保每个控件都读取和写入相同的数据记录。要想在一个窗体中浏览数据源中的数据记录。要想在一个窗体中浏览数据源中的数据记录,必须将Position属性设定为特定的数值。Position属性从0开始,及第一条记录的Position的属性值为0。如果将Position属性设置成第一条揭露之前或之后的数值不会造成错误,但是应该判断目前是否已超过记录的有效范围。

2Count属性。Count表示DataSet对象中某个数据表的记录总数。由于Windows窗体通过BindingText对象来管理窗体的所有的CurrencyManager对象,所以必须使用BingText类的构造函数来CurrencyManager对象.例如:建立一个“DataSet1”的数据集,该数据集包含了一个“课程信息”数据表,要获取CurrencyManager对象并移到第一条记录,必须写成以下形式:

BingContext(DataSet11,"课程信息").Position=0

浏览数据时常见的几种方法:

导航按钮

程序代码

第一条

BingContext(DataSet11,"课程信息".Position=

上一条

BingContext(DataSet11,"课程信息".Position-=1

后一条

BingContext(DataSet11,"课程信息".Position+=1

最后一条

BingContext(DataSet11,"课程信息".Position=BidingContext(DataSet11,"课程信息").Count-1

每次使用CurrencyManager对象时,都要使用BindContext来获取非常不方便。我们可以这样:向生命一个类BindManagerBase的变量,并用此变脸代表数据源的CurrencyManager对象,然后需要使用时,直接使用该变量。如:Dim bmData As BaindingManagerBase

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值