这不应该是一个非常简单的操作吗?但是,我看到既没有size()也没有length()方法.
我有一个用户'投票'表和'用户'表的数据库.我认为数据库会在很短的时间内变得非常大,所以我想使用最有效的方法.
我想我每次都可以用"投票"表格中的WHERE语句COUNT()投票数量,或者我可以将得分存储在"用户"表中,每次投票时都将其增加1添加.
哪个最好/最快,和/或有没有其他方法这样做?
我正在我的项目(Delphi 10 Seattle)中慢慢从 ClientDataSet 迁移到 FireDAC FDQuery 组件。
我经常在 CDS 中使用的一个技巧是检查某个范围内的记录计数。
那是:
CDS.SetRange([Value1][Value2]);
k := CDS.RecordCount;
case k of
1 : DoSingleThing;
2 : DoDoubleThing;
else
BailOnWrongCount;
end;
Run Code Online (Sandbox Code Playgroud)
因为我需要同时提供整套数据,所以我在第一次打开查询时使用 FetchOptions.Mode := fmAll 。
FDQuery.SetRange([Value1][Value2]);然后调用总是 FDQuery.RecordCount返回整个数据集的记录计数(根据 fmAll) - 而不是当前范围。
我必须手动循环范围计数记录。
有没有更简单的方法来获取当前范围内的记录数?
我使用以下代码行收到错误:
DCount("Letter Status","Letter Status","[Letter Status] = 'Received letter'")
Run Code Online (Sandbox Code Playgroud)
我在Access 2007中遇到的错误说
失踪的操作员,但我不知道如何或在哪里.
(字母状态是字段和表格的名称(这是一个工作设计,对不起)