共有评论41条
当前显示最后6条评论
|
kinneng |
2006/8/6 5:02:13 |
我要的就是VCL那种效果,原生ADO要得到这效果,就要加上很多楼主觉得讨厌的东西, 还是省点心用VCL算了,以免客户觉得软件弱智不收货,就麻烦了,Eof是出界标志, 将当前行移到最后一行,并不触发Eof,只有继续往下移,出错之后,Eof才会触发, Bof 也是这样。 |
kinneng |
2006/8/6 5:24:31 |
to cjrb 用StringGrid显示十万条可以做到跟十条的时间没有分别,关键就是当前显示什么数据 就填充什么数据进StringGrid的数据缓冲区Stringlist,这点DBGrid做的最好,就算是 亿万条数据,它也只取当前显示的几条,速度快慢是数据库的事。 |
jasonmale |
2006/8/8 17:22:15 |
为了探讨楼主技术方面的可行性,我把我原先使用的方法修改成使用楼主的方法(基本上使用的都是ADO原生代码,我也下了一个ADO帮助文件研究了一下),然后在后台建立一个表,插入了100多万笔记录,当在浏览第一页时(我基本不去取pageCount,仅仅设定PageSize,取PageCount会更慢,这里仅仅测试OPEN),系统战用内存还能接收,虽然比较大。但速度真的不能忍受,除非把后台数据服务器修改为IBM小型机,并且内存足够大。 所以我个人认为,对于小型数据资源,楼主介绍使用ADO自己的分页技术也可行,但对于海量数据处理、服务器比较差或者网络连接比较少(非INTERNET)的的情况,就谨慎使用了。
顺便说一句,大家讨论技术可以,就事论事。当然楼主批评鄙人的一些观点,我接受,因为可能老了,往往会用经验去下结论,这是不对的,我们学习技术,要多去实践,才能在实践中学会很多。感谢各位的技术探讨,永不认输的精神值得我们学习,我们用提倡用实践去证明一切可能。 共勉! |
lijianfu |
2006/8/25 15:46:34 |
都是MS惹的祸,用MYSQL作库算了! |
lczh8420 |
2007/5/16 16:03:41 |
这样效果是一样的.没有达到分页的最终目的. 因为你使用的方法其实已经一次性把10万条数据取出到adotable了.所以在取出10万条记录时候所花的时间是不变的.而且取出10万条数据到应用端的内存消耗一样.只是显示的方式不一样罢了(修改pagesize的效果相同). 最好的办法是使用存储过程写分页. |
litterhawk |
2007/8/4 14:19:32 |
C/S和B/S还是有很多不同的,在delphi里你可以用Visual ListView的方式去分页啊,每次调用SQL语句取得客户端能看到的一部分。这样可以吗?那么用dbexpress呢? |
我要发表评论 |
查看全部评论 |