2016-09-29 18 views
1

私はDelphi XE6プロジェクトに取り組んでいます。 PostgreSQL接続にFiredacを使用しています。Delphi Firedac TFDtable未公開の問題

このプロジェクトには2つのデータモジュールがあり、これらのデータモジュールには約20のTFDtablesコンポーネントがあります。

データモジュールのイベントを作成する際に、私はすべてのテーブルに対して「TFDtable.open」を実行しています。 これらのテーブルには、700000〜800000のエントリを含む多くのデータが含まれています。

問題はデータを読み込むことです。ロードに最低20秒かかります 他の方法で高速化する方法はありますか?

+2

あなたはユーザーがGUIでそれらを閲覧することができますちょうどように、列のこれらの多数をロードしていますか?とにかく、これらのテーブルをはるかに早く開くことは間違いありません。あなたが読み込んだレコードをはるかに選択的にする方がずっと良いでしょう。それはアプリケーションとデータベースの設計の問題です。 – MartynA

+0

FDTablesに 'FetchOptions.Mode'がどのように設定されていますか? –

+0

fmOnDemand – poonam

答えて

0

これはLive Data Window Modeと呼ばれており、LiveWindowFastFirstプロパティを探しているようです。それは次のように説明されています

それがTrueに設定されている場合

LiveWindowFastFirst、その後、FireDACはできるだけ速く最初 結果を返すために、クエリを構築します。 False(デフォルトの の値)に設定されている場合、FireDACはすべてのテーブル行を返す時間を最小限に抑えます。

ので、それを有効にしよう:

... 
FDTable1.FetchOptions.LiveWindowFastFirst := True; 
FDTable1.Open; 
関連する問題