Delphi XE FDQuery.FetchOptions.RecordCountMode - 控制如何计数结果集中的记录
单元:FireDAC.Stan.Option.pas
原型:
TFDRecordCountMode = (cmVisible, cmFetched, cmTotal);
property RecordCountMode: TFDRecordCountMode read GetRecordcountMode write SetRecordCountMode stored IsRCMS default cmVisible;
描述:
控制如何计数结果集中的记录。使用RecordCountMode属性控制TFDDataSet如何对结果集中的记录进行计数。
cmVisible
- RecordCount返回当前可通过TDataSet导航界面访问的记录数。例如,用户可以使用关联的TDBGrid访问所有这些记录。
- RecordCountMode跟踪删除/附加到数据集的记录。
- 不适用于LDV模式下的TFDTable。
- 没有开销。
- 为最终用户提供方便的价值。
cmFetched
- RecordCount返回当前时刻获取的记录数。
- RecordCountMode跟踪删除/附加到数据集的记录。
- 不适用于LDV模式下的TFDTable。
- 没有开销。
- 为当前数据集提供“权重”,而不是为最终用户提供方便的值。
cmTotal
- RecordCount 返回所有记录数。它将由命令返回。例如:FireDAC发出:SELECT COUNT(*)FROM(<original SQL command text>)。
- RecordCountMode不跟踪删除/附加到数据集的记录。要刷新RecordCountMode,请调用refresh方法。
- 适用于LDV模式下的TFDTable。
- 数据集打开时有开销。
- 在数据集记录被删除/插入之前,提供几乎精确的记录数。
默认值为 cmVisible。
注意:当RecordCountMode=cmTotal时,MySQL可能返回 "Commands out of sync; you can't run this command now"的错误。在这种情况下,要么将Mode设置为fmFetchAll,要么不使用cmTotal。
创建时间:2021.07.09 更新时间: