Z zsy146 Unregistered / Unconfirmed GUEST, unregistred user! 2006-04-05 #21 利用XML,Clientdataset支持XML文件的,可以把ClientDataset中的数据保存到XMl文件中,然后提交到中间层处理. 现在正在研究中....
W weichao9999 Unregistered / Unconfirmed GUEST, unregistred user! 2006-04-06 #22 zsy146说得对,我就是这么做的,xml是中间层返回的数据集文件,然后一次导入clientdataset,感觉这样最快
K kite20020304 Unregistered / Unconfirmed GUEST, unregistred user! 2006-04-06 #23 中间层是用C写的,处理XML比较麻烦 再者说,如果中间层用XML的方式,中间层+本地处理的时间比以前更长了
晚 晚起的小虫 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #25 用存储过程,或是自Insert语句并用使用参数和预编译.如果是短时间内插入大量数据,而且是短期行为的话,可以先把索引都删除了,再插再建索引.
H hhmyz Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-25 #26 觉得怎么也快不了你总要从中间层到客户端吧! 不过你中间层是什么格式的。
差 差不多算了 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-30 #27 前面加上 ClientDataSet1.disablecontrol看看
Y yf_zq Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-30 #28 cds毕竟是一种文件型的结构数据表,并且并不知道其格式,所以存放的数据不易过多.
C chenjf0625 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-31 #29 with ClientDataset1 do begin DisableControl; try for ... begin ClientDataSet1.Append; ClientDataSet1.Fields[0].Value := ... ... ClientDataSet1.Fields[N].Value := ... end; ClientDataSet1.Post;//移到外面來 finally EnableControl; end; end;
with ClientDataset1 do begin DisableControl; try for ... begin ClientDataSet1.Append; ClientDataSet1.Fields[0].Value := ... ... ClientDataSet1.Fields[N].Value := ... end; ClientDataSet1.Post;//移到外面來 finally EnableControl; end; end;
F foxphone2003 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-31 #30 3万行记录 如果格式统一 建议用BCP导入,大概一两秒吧 clientdataset是重量级控件,这里根本不就该选用它
K kite20020304 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-31 #31 可能我前面描述的不是太清楚,抱歉! 系统采用三层架构 S:数据库 Oracle S:中间层 Tuxedo + Linux (标准C) C:采用ClientDataSet作为数据存储 客户端启动时下载一些必要的数据,其中有一张表约3万行数据(30个字段),中间处理的时间约为2s(Tuxedo特有的格式FML32),客户端写入CDS速度较慢(已设置DisableControl),如何提高客户端写入CDS的速度?
可能我前面描述的不是太清楚,抱歉! 系统采用三层架构 S:数据库 Oracle S:中间层 Tuxedo + Linux (标准C) C:采用ClientDataSet作为数据存储 客户端启动时下载一些必要的数据,其中有一张表约3万行数据(30个字段),中间处理的时间约为2s(Tuxedo特有的格式FML32),客户端写入CDS速度较慢(已设置DisableControl),如何提高客户端写入CDS的速度?
W wcq1002 Unregistered / Unconfirmed GUEST, unregistred user! 2006-06-24 #33 中间层采用传数据包的形式传到客户端, clientdataset.data := 传回的数据包;
L lmxcyx Unregistered / Unconfirmed GUEST, unregistred user! 2006-06-24 #35 对数据进行分段提交,首先将数据存放到客户机的内存中,应该为100条左右对数据进行提交一次,具体情况经过测试在确定。 在对数据库进行提交前,将数据库中的索引信息进行删除,待数据全部提交后重建需要信息应该能够提高数据的写入速度。
对数据进行分段提交,首先将数据存放到客户机的内存中,应该为100条左右对数据进行提交一次,具体情况经过测试在确定。 在对数据库进行提交前,将数据库中的索引信息进行删除,待数据全部提交后重建需要信息应该能够提高数据的写入速度。
C chenglh Unregistered / Unconfirmed GUEST, unregistred user! 2006-06-25 #36 我也遇到过同样的问题。可以通过CloneCursor解决。请参见我的笔记: http://www.delphibbs.com/keylife/iblog_show.asp?xid=4566 最后两条。
Y yeskert1 Unregistered / Unconfirmed GUEST, unregistred user! 2006-07-07 #40 你的意思是…… 如果你想提高数据从中间层到客户端(cds)这个“下载”过程的速度,那么很难了!也许你可以考虑分段、逐步下载。 如果想提高客户端编辑数据(如果插入)的速度,建议: 再增加一个cds,这个cds和原来的那个结构一样,但不包含数据或只包含少量数据。用这个 cds编辑数据。 cds下载数据的时候,也会建立相应的索引,因此数据多的时候插入数据会很慢
你的意思是…… 如果你想提高数据从中间层到客户端(cds)这个“下载”过程的速度,那么很难了!也许你可以考虑分段、逐步下载。 如果想提高客户端编辑数据(如果插入)的速度,建议: 再增加一个cds,这个cds和原来的那个结构一样,但不包含数据或只包含少量数据。用这个 cds编辑数据。 cds下载数据的时候,也会建立相应的索引,因此数据多的时候插入数据会很慢