delphi读取数据库数据

CS模式下delphi实时读取数据库数据,数据量大,而且显示是用表格显示使用time刷新速度慢而且刷新效果差刷新时总是跳到第一条去,请问有什么方法能解决。能不能只刷新更新... CS模式下delphi实时读取数据库数据,数据量大,而且显示是用表格显示使用time刷新速度慢而且刷新效果差刷新时总是跳到第一条去,请问有什么方法能解决。能不能只刷新更新的数据没有更新的不刷新。
是实时监控数据变化而不是添加数据后的刷新问题,效果就像同花顺的那样的效果,如果有数据更新就刷新表里的某个单元的数据或某行的数据而不是整个表都刷新
展开
 我来答
brapple
2010-07-09 · TA获得超过756个赞
知道小有建树答主
回答量:1127
采纳率:0%
帮助的人:851万
展开全部
提供另一个思路,不知道是不是适用你。
你可以使用客户端数据集。
你说的功能可灵活实现。你可以测试数据量的大小,即只处理数据表中的一部分数据,如100条。当然,客户端的刷新也只处理这100条。
另一个方式,你可以直接把新增的数据,放到客户端的数据集,可以删除的。其原理是记录在另一个记录表,记录变化的数据。这种方式,你逐条的处理都可以,很灵活。

还有,看你说的,不知道理解的对不对。你可以对数据感知组件,关掉刷新功能。这样数据在变化过程中不会刷新。在完成数据的处理后,再打开此功能。比如,你逐条对数据中的列做运算,在运算前可以关闭,处理完再打开。

不清楚的,可进一步沟通。
mores1
2010-07-07 · TA获得超过2419个赞
知道小有建树答主
回答量:254
采纳率:0%
帮助的人:173万
展开全部
修改数据可以这样

adoquery1.edit;
adoquery1.fieldbyname('字段A').asstring:='字符类型';
adoquery1.fieldbyname('字段B').asinteger:=100;
adoquery1.fieldbyname('字段A').asfloat:= 12.345;
adoquery1.post;

增加数据可以这样

adoquery1.append;
adoquery1.fieldbyname('字段A').asstring:='字符类型';
adoquery1.fieldbyname('字段B').asinteger:=100;
adoquery1.fieldbyname('字段A').asfloat:= 12.345;
adoquery1.post;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Tosunk
2010-07-07 · TA获得超过436个赞
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:346万
展开全部
每次只读取你要的数据
然后又append 方法把记录append上去,
我们公司做HIs的,客户的情况和你一样
我们采用的就是这种方法

如果楼主还要具体的做法
可以联系我
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
awwseedrr
2010-07-19 · 超过11用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:40.7万
展开全部
可以考虑用两个qry,一个连grid,一个后台读取,读完后交换qry,重要的是客户体验。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式