循环访问Delphi Recordset中的参数

Jam*_*son 1 mysql delphi parameters recordset

我有一个带有可变数据集的delphi数据源.这些数据集具有可变数量的参数.我希望能够将数据集中所有参数的值修改为设定值.我试图通过使用参数的.Items []属性迭代集合中的所有参数,如下所示:

 with (datamoduleSearch.datasourceSearch.DataSet as TADODataSet) do
  begin
    Close;
    i := 0;
    while assigned(Parameters.Items[i]) do
    begin
      Parameters.Items[i].Value := SearchText;
      inc(i);
    end;
    Open;
    Active := True;
  end;
end;
Run Code Online (Sandbox Code Playgroud)

但是,由于我怀疑我没有正确使用指定的过程,因此失败了.有没有办法找到记录集中的参数数量,并按照我描述的方式迭代它?

Zdr*_*nev 5

改为使用for循环.您也可以Parameters[]直接引用,Items默认属性也是:

for i := 0 to Parameters.Count - 1 do
    Parameters[i].Value := SearchText;
Run Code Online (Sandbox Code Playgroud)