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 更新時間:
