VB与DB2(V8.1)连接,用DATAGRID显示选定的数据库表或SQL查询的结果。我选择较小的表时,没有任何问题。但是在查询较大的表时(600M或更大),出现“由于中断,处理被取消”或“行集体不能作为标签”的错误提示,或者DATAGRID控件显示窗体没有任何显示。我想请问:1.这种错误是否是由于结果集不能正确产生引起的(ExecuteComplete事件完成后,结果集的RECORDCOUNT为-1)?2.是由于控件不支持大的结果集?3.是否需要异步操作实现?这种方法编程的要点是什么?需要哪些主要的代码?请各位一定帮助解决。万分感谢。
解决方案 »
- 初学vb,请问如何连接远程服务器,并且登陆
- 用setupfactory6.0打包后,数据环境报错,请问如何解决?急!!!
- 求助。。。想用VB实现两个功能,一是点击command1控件能生成一个command2,再点击继续生成二是,怎样实现两个控件的线连接,最好可以对线编号
- 怎样在MSHFlexGrid中添加其他控件
- 怎么在vb中实现对文件加密?在线等!
- 求助
- 打印机记录问题
- 我在做VBSCRIPT时碰到的数据无法棒定问题
- 如何实现对文本文件任意一行的读写?
- 我用printer对像中的 form1.printform ,有问题?
- 高分求救!!!关于软件注册的问题。在线等待!!!
- 一个源代码,功能实现不了麻烦看一下。
“由于中断,处理被取消”
可能是由于程序还在运行时你关闭应用,因为那么大的数据量不会一时半刻就能搜索好的。
“行集体不能作为标签”
可能是DATAGRID受不了如此多的记录,DATAGRID也有个上限。
不过到现在也没有做过像楼主说的那么大的数据库,最多的一个表也才以十万计算而已,所以对大型表的操作也没有经验,不好意思,帮不上什么忙...(600M...,我的内存才128M)
CusorLocation = adUserClient
CursorType, LockType,...,等等,相应改变ado的对应属性。
1.不能显示数据是由于控件的缓冲区溢出了,我是根据list控件来判断的,可能大家都试过,不停的添加数据产生的结果就是溢出,报错。数据库控件可能就是读取数据库时读到某些值就溢出,根本无法继续读数据的内容了。 2.好象vb里很多的控件都会溢出,都是控件本身的问题,实在是太简陋了。 3.我不知道怎么解决问题,但是我有个建议,想别的方法或者用别的控件获取选定的数据库表或SQL查询的结果,再用其他控件显示出来,我觉得数据库表太大了,控件只读几个跟数据库内容无关的数据就会溢出,根本无法继续下去,甚至可能在获取到需要显示多少个数据时就超过可接受的范围了。
可是我知道你的那个Recordset是有一点太大了600M!