关于用TClientDataSet来存放大批量数据,急! 我现在欲将100万条记录装载一个TClientDataSet中,再保存成为一个Cds格式的文件,不是慢的不行,就是死机;我用的方法是,ADO的连接方式,用TADOQuery控件查询,通过DataSetProvider传给一个TClientDataSet,诸位如有相同的经历,请指教,比较急;提出其它好的办法也行,主要是想最后能把这100万条记录保存成一个文件 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可能你的设计思路有问题。clientdataset 本来就是内存表的形式,适合保存少量的数据,我个人觉得,多于几千条记录,就不大适用于使用clientDataset 了 用ClientDataSet的GetNextPacket方法一次只取500條試試 >>100万条记录装载一个TClientDataSet中如果一次性读取这么多条数据肯定是要挂掉的。尝试一次性读取100条,然后写如文件,再读取下个100条(GetNextPacket)再写入文件。要么干脆直接利用数据库的一些特性,比如像Oracle可以直接通过它的包把数据 查询结果生成文本。MSSQL应该也有类似功能。 问题软件分为两个部分,我上面所说的就是要在其中的一个部分使用,然后能生成一个文件,然后在别一个部分的再把这个文件中存放的数据记录再导进去,所以关键的问题就是如何生成一个文件,生成一个什么样的文件,当初在做的时候,可能是考虑到TClientDataSet比较方便,但谁知想错了,由于经验比较少的原因吧 access数据库 中用count(iif()) 的问题?大家帮我 小问题--loadfromfile 有关枚举类型的问题!很急! 一机一程序如何控制两个以上的USB输入设备? BDE奇特问题!60分大放送! websnap问题!!急! 我想用delphi做个语言的编译程序,有高手愿意帮我吗? 如何触发combobox 的change事件 对指定目录下的符合指定后缀(如.mpga)的所有文件改名(如改为.mp3) 大家帮忙看看~是不是价值5000000???(不是我作的!!!) 关于fastreport的简单问题 初级问题,各位帮忙
clientdataset 本来就是内存表的形式,适合保存少量的数据,
我个人觉得,多于几千条记录,就不大适用于使用clientDataset 了
如果一次性读取这么多条数据肯定是要挂掉的。
尝试一次性读取100条,然后写如文件,再读取下个100条(GetNextPacket)
再写入文件。要么干脆直接利用数据库的一些特性,比如像Oracle可以直接通过它的包把数据 查询结果生成文本。MSSQL应该也有类似功能。