Delphi - 如何检查数据集是否已提取所有行?

Delphi - How to check if a DataSet has fetched all rows?

如标题所述,是否可以检查 DataSet 是否已获取所有行? 我正在使用从 FDQuery 派生的组件。

我需要它,因为我确信我的数据集每次都获取所有行,但我注意到将 connection.FetchOptions.Mode 更改为 fmAll(来自 fmOnDemand),它们需要打开的时间增加了 1.5 倍。

如果我正确理解你的问题,文档会回答它:

ProviderEOF is a shortcut for the TFDDataSet.SourceEOF property and allows you >to specify whether all rows are fetched from a DB.

The property is for the TClientDataSet compatibility.

http://docwiki.embarcadero.com/Libraries/Tokyo/en/FireDAC.Comp.Client.TFDCustomMemTable.ProviderEOF

我有义务@Victoria 指出 SourceEOF 是更好的检查方法,请参阅

http://docwiki.embarcadero.com/Libraries/Tokyo/en/FireDAC.Comp.DataSet.TFDDataSet.SourceEOF