我正在寻找 TFDQuery 中的跳过和选择。我找到的属性是 .FetchOptions.RecsSkip 和 .FetchOptions.RecsMax。我使用 Tokyo 10.2.3和数据库 Firebird 3
我在运行时进行查询,我想在 5 处获取开始记录并获取 8 条下一条记录。
我是这样的:
结果不跳过前5条记录
var
qryTest: TFDQuery;
begin
qryTest:= TFDQuery.Create(self);
qryTest.Connection := self.FDConnection;
qryTest.sql.Text:= ' select * from salutationdescriptions order by ID';
qryTest.Disconnect();
qryTest.FetchOptions.RecsSkip:= 5;
qryTest.FetchOptions.RecsMax:= 8;
qryTest.Open();
但这给出了前 8 条记录。不跳过前 5 条记录。
好的,我也一样,但现在我在设计时设置 TFQQuery(表单上的组件)并在组件中添加选择“select * from salutationdescriptions order by ID”。
运行代码:
本次跳过拳头5条记录
qryItem.Close;
qryItem.Disconnect();
qryItem.FetchOptions.RecsSkip:= 5;
qryItem.FetchOptions.RecsMax:= 8;
qryItem.Open();
我得到的结果是好的。这会跳过前 5 条记录。当我添加 qryItem.sql.text 时,它不会跳过前 5 条记录
这不跳过拳头5条记录
qryItem.Close;
qryItem.sql.Text:= ' select * from salutationdescriptions order by ID';
qryItem.Disconnect();
qryItem.FetchOptions.RecsSkip:= 5;
qryItem.FetchOptions.RecsMax:= 8;
qryItem.Open();
这不会跳过前 5 条记录。
我必须在属性中设置一些东西吗?
我想在运行时使用 RecsSkip 和 RecsMax。有什么建议么?
发现问题
在 SQL.Text 中,我必须以 'Select ... no space between ' 和 select