Delphi XE FDQuery.FetchOptions.RecordCountMode- 控制如何计数结果集中的记录

Delphi XE FDQuery.FetchOptions.RecordCountMode - 控制如何计数结果集中的记录

单元:FireDAC.Stan.Option.pas

原型:

1
2
TFDRecordCountMode = (cmVisible, cmFetched, cmTotal);<br>
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  更新时间:

posted on   滔Roy  阅读(850)  评论(0编辑  收藏  举报

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报

导航

点击右上角即可分享
微信分享提示