ADO学习(六)服务器和客户端游标

ADO连接数据库的操作中遇到CursorLocation的adUseClient和adUseServer这两个属性值,收集了些资料,帮助理解。
服务器端游标将结果集放在服务器的缓冲区内,客户端游标将结果集放在客户机的缓冲区内.
服务器端游标对数据的变化有很强的敏感性,客户端游标在处理记录集的速度上有优势,配合仅向前游标等使用可以提高程序的性能,并且少占网络资源,还可以支持较多的其他特性.但使用客户端游标在从服务器读取记录集时较占资源.这要看实际情况使用了

如果在connection中设置游标类型为服务器端,在record中设置为客户端,那哪个算数,反之呢
用connection对象的语句就使用connection对象的游标(conn.Execute()),使用recordset的用recordset的游标(rst.Open()). 

如果在你取到记录集以后,有人修改了数据库里的数据,使用服务器端游标加上动态游标就可以得到最新的数据,这时如果是客户端游标就无法察觉到数据的变化。要根据实际情况来使用。如果你的系统对数据要求即时性较高则可用服务器端游标,反之则使用客户端游标,提高程序性能。使用服务器端游标也可以调用存储过程的,只不过他无法返回记录条数(recordcount)要使用客户端游标就可以了。

对游标控制

在Recordset对象还有一个属性CursorLocation用于指定游标的位置,我们可以指定使用客户端的游标,也可以指定使用服务器端游标。CursorLocation属性的缺省值为adUseServer,使用服务器端游标的好处是,程序对数据库的修改可以立即反映到服务器,而且,其他用户对数据库的操作也可以马上反映出来,但使用服务器端游标带来了高网络流量,每一个数据访问都需要通过网络交换数据。

ADO提供了客户端数据缓存处理,因此,在打开Recordset对象前,可以设置CursorLocation为adUseClient,指定使用客户端游标。通过客户端游标,ADO利用本地数据缓存以降低网络流量,虽然在数据访问灵活性上有所损失,但却大大提高了通过网络访问数据库的性能。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值