【问题标题】:Delphi Firedac TFDtable open issueDelphi Firedac TFDtable 开放问题
【发布时间】:2016-09-29 05:21:34
【问题描述】:

我正在从事 Delphi XE6 项目。 我正在使用 Firedac 进行 PostgreSQL 连接。

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

在创建数据模块事件时,我正在为所有表执行“TFDtable.open”。 这些表包含大量数据,例如 700000 到 800000 个条目。

问题在于加载数据。加载至少需要 20 秒 有没有其他办法让它更快?

【问题讨论】:

  • 您加载这些大量的行只是为了让用户可以在您的 gui 中浏览它们吗?无论如何,我怀疑你会更快地打开这些表。更好的是对您加载的记录更具选择性。这是应用程序和数据库设计的问题。
  • FetchOptions.Mode 是如何在这些 FDTables 中设置的?
  • 尽管 FireDAC 可以在这里为您提供帮助,但我完全同意 @MartynA 关于获取这么多行的看法。获取如此多的数据只是浪费资源。

标签: postgresql delphi firedac


【解决方案1】:

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

LiveWindowFastFirst

如果设置为 True,则 FireDAC 构建一个查询以返回第一个 尽快出结果。如果设置为 False(默认 值),然后 FireDAC 最小化返回所有表行的时间。

所以尝试启用它:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-04
    相关资源
    最近更新 更多