2016-09-29 117 views
1

我正在开发Delphi XE6项目。 我正在使用Firedac进行PostgreSQL连接。Delphi Firedac TFDtable开放问题

该项目中有两个数据模块,这些数据模块上有近20个TFDtables组件。

创建datamodules事件我正在为所有表做“TFDtable.open”。 这些表包含很多数据,比如700000到800000个条目。

问题是加载数据。需要至少20秒才能加载 有没有其他方法可以使其更快?

+2

你加载这些大量的行只是让用户能浏览你的鬼?无论如何,我怀疑你会更快地打开这些表格。最好选择加载哪些记录。这是应用程序和数据库设计的问题。 – MartynA

+0

在这些FDTables中如何设置FetchOptions.Mode? –

+0

这是fmOnDemand – poonam

回答

0

看来您正在实施所谓的Live Data Window Mode,并且您正在寻找LiveWindowFastFirst属性。它被描述为:

LiveWindowFastFirst

如果它被设置为True,则FireDAC建立一个查询,以尽可能快地返回第一 结果。如果它设置为False(缺省值为 ),则FireDAC最小化返回所有表格行的时间。

所以试着启用它:

... 
FDTable1.FetchOptions.LiveWindowFastFirst := True; 
FDTable1.Open;