在FoxTable的帮助文件中,专门有"大容量数据的管理"一章,贺老师提供了数量据非常大时的加载方案.
但经过我的测试,发现当一个项目中的表较多时,目前系统中的解决方案有明显缺陷。具体问题是,当一个项目中的表较多而且表结构较复杂时,即使我每个表都加载空表,打开项目时仍然非常慢!我的一个项目中有大概60个表,打开狐表需要20秒左右,但打开项目需要3分钟左右(所有表都加载空表)。打开项目的速度如何之慢,把我的用户快吓跑完了,即使没有吓跑的,使用起来也非常费劲,一般都是先双击狐表项目,然后泡一杯热茶或咖啡,等喝完了,项目也快启动完了。
经过我的分析,估计是在打开项目时,即使每个表都打开空表,也要加载每个表的表结构、表事件等,所以当表较多时加载空表的速度也慢之又慢。我的建议是贺老师能否改进一下,在打开项目时,提供一个选项:不加载表结构、表事件(可能还有相关的其他东西)。然后,在项目中需要时,再加载这些表的表结构、表事件及相关东西。这样,可以,大大提高打开项目的速度,也不会影响项目中表的使用。
希望贺老师能够重视此事!
补充:虽然用SQLTable 似乎可以解决这个问题,可以在打开项目时不加载任何表,在窗口中再动态加载表。但有些情况下用SQlTable似乎也不太方便(用SQLTable时若表与表之间的计算关系复杂,需要在一个窗口中动态加载多个Table,再把这些Table隐藏起来,似乎也不太方便)。
[此贴子已经被作者于2009-9-7 9:20:52编辑过]