电信主站 网通分站
购买流程 付款方式 常见问题 在线提问 续租服务 购物车
用户名: 密 码: 忘记密码?
首 页
域名注册
虚拟主机
双线主机
服务器租用
VPS主机
企业邮局
代理专区
客服中心
虚拟主机行业资讯 虚拟主机评测对比 互联网最新动态 技术学院 站长资讯 在线教程 网站运营
搜索优化 服务器 网络编程 图形图象 站长之家 网页制作 操作系统
冲浪宝典 软件教学 视频通信 办公软件 邮件系统 网络安全 认证考试
您当前位置:西部数码->资讯中心-> 邮件系统-> Exchange Server
vb精彩教程:数据异步加载_visualbasic教程
作者:网友供稿 点击:0
  西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!虚拟主机可在线rar解压,自动数据恢复设置虚拟目录等.虚拟主机免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金!
文章页数:[1] 
VB精彩教程:数据异步加载

  异步加载是ADO的一种数据加载方式,主要由记录集的options参数来控制!
  
  ADO210.CHM中的格式:
  recordset.OpenSource,ActiveConnection,CursorType,LockType,Options
  
  Options
  可选。Long值,指示提供者计算Source参数的方式(如果该参数表示除Command对象之外的某些内容),或者指示Recordset应该从以前保存过的文件中恢复。可以是一个或多[被屏蔽广告]
个CommandTypeEnum或ExecuteOptionEnum值,这些值可以用位AND操作符组合。
  
  ExecuteOptionEnum
  指定提供者执行命令的方式。
  
  常量值说明
  adAsyncExecute0x10指示命令将异步执行。
  该值不能与CommandTypeEnum的值adCmdTableDirect组合。
  
  adAsyncFetch0x20指示在CacheSize属性中指定的初始数量以后的剩余行将被异步检索。
  adAsyncFetchNonBlocking0x40指示检索时主线程从不会阻塞。如果未检索到所请求的行,当前行将自行移动到文件结尾。
  如果从包含持久存储Recordset的Stream中打开Recordset,那么adAsyncFetchNonBlocking将不起作用;该操作将同步进行并发生阻塞。
  
  当adCmdTableDirect选项被用于打开Recordset时,adAsynchFetchNonBlocking不起作用。

  adExecuteNoRecords0x80指示命令文本是不返回行的命令或存储过程(例如,仅插入数据的命令)。如果检索到任何行,它们将被放弃且不返回。
    adExecuteNoRecords只能作为可选参数传递给Command或Connection的Execute方法。
  
  adExecuteStream0x400指示命令执行的结果应当作为流返回。
  adExecuteStream只能作为可选参数传递给Command的Execute方法。
  
  adExecuteRecord指示CommandText是一个命令或存储过程,它返回应当被作为Record对象返回的单一行。
  adOptionUnspecified-1指示未指定命令。
  
  
  CommandTypeEnum
  指定解释命令参数的方法。
  
  常量值说明
  adCmdUnspecified-1不指定命令类型的参数。
  adCmdText1按命令或存储过程调用的文本定义计算CommandText。
  adCmdTable2按表名计算CommandText,该表的列全部是由内部生成的SQL查询返回的。
  adCmdStoredProc4按存储过程名计算CommandText。

  adCmdUnknown8默认值。指示CommandText属性中命令的类型未知。
  adCmdFile256按持久存储的Recordset的文件名计算CommandText。只与Recordset.Open或Requery一起使用。
  adCmdTableDirect512按表名计算CommandText,该表的列被全部返回。只与Recordset.Open或Requery一起使用。若要使用Seek方法,必须通过adCmdTableDirect打开Recordset。
  该值不能与ExecuteOptionEnum的值adAsyncExecute组合。
  
  一般用这个参数adAsyncFetch来控制,另外需要
  .Properties("InitalFetchSize")=50
  另外可以参考《MSCE的VB分布式应用的开发》
  
  举例,Vb6.0的代码:
  
  DimAdoRsasADODB.Recordset
  
  setAdoRs=newADODB.Recordset
  WithAdoRs
  .CursorLocation=adUseClient
  .Properties("InitialFetchSize")=50
  .OpenmstrSQL,AdoCn,adOpenStatic,adLockOptimistic,adAsyncFetch
  If.BOF=FalseOr.EOF=FalseThen
  --------------
  else
  Endif
  EndWith
  
  总结:很多的网友都问大数量加载的问题,现在这种方式可以较快的返回数据。一般100万数据,前面50条只需要5~6秒就返回来!这个方式需要注意的是:
    
  1、如果返数据量太大,而中途要取消,需要用AdoCn.Cancel来取消查询,否则数据会继续返回数据。
  
  2、如果数据量太大,记录集的释放会有问题。如果数据量在200M~300M时,setadors=nothing不会快速释放高速缓存。希望有其它网友能够提供自己的见解。

  3、对大数据量时,C/S开发中提供翻页/网格的滚动条结合的方式,对用户来话是极为方便。有的网友提供用存储过程来实现。本人在开发过程用分页控件与异步加载的数据源结合,实现了很好的数据浏览。
  
  开发环境:VB6.0 MSSQLServer2K WindowsADS2K通过。

->


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
相关主题
文章页数:[1] 
Google
热门文章
·autocad中的坐标系_autocad教程
·如何构建catv宽带ip网络_视频通信
·微软office将集成免费voip 冲击电信运营商_it动态
·文档数据库与关系数据库的比较_visualbasic教程
·vb精彩教程:数据异步加载_visualbasic教程
·vb图像处理之几个常用滤镜的实现_visualbasic教程
·如何获得系统光驱的盘符_visualbasic教程
·透明的窗体(from)上显示背景透通图_visualbasic教程
·如何调用chm格式的帮助文件_visualbasic教程
·用mediaplayer控件做一个mp3播放器_visualbasic教程

最新文章
·photoshop轻松制作透明玻璃效果字母_photoshop教程
·photoshop照片处理:强烈对比的旧杂志照片_photoshop教程
·fireworks绘制可爱的q版电视机图标_fireworks教程
·photoshop制作金属指环_photoshop教程
·photoshop特效:地震后的道路_photoshop教程
·photoshop制作实用艺术阴影效果文字_photoshop教程
·photoshop玩转艺术设计合成效果_photoshop教程
·photoshop制作商业网页全过程_photoshop教程
·photoshop打造生冷坚硬的铁板效果_photoshop教程
·选择适当的photoshop笔刷画国画山石_photoshop教程


 
 


版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
  打印  刷新  关闭
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 虚拟主机 | 资讯中心 | 友情链接 | 网站地图

版权所有 西部数码(www.west263.com)
CopyRight (c) 2002~2006 west263.com all right reserved.
公司地址:四川成都市万和路90号天象大厦4楼 邮编:610031
电话总机:028-86262244 86263048 86263408 86263960 86264018 86267838
售前咨询:总机转201 202 203 204 206 208
售后服务:总机转211 212 213 214
财务咨询:总机转224 223 传真:028-86264041 财务QQ:点击发送消息给对方635483282
售前咨询QQ:点击发送消息给对方2182518 点击发送消息给对方241975952 点击发送消息给对方275026793 点击发送消息给对方408235859
售后服务QQ:点击发送消息给对方17708515 点击发送消息给对方307742704 点击发送消息给对方287976517 点击发送消息给对方363783715
《中华人民共和国增值电信业务经营许可证》编号:川B2-20030065号