循环访问Delphi Recordset中的参数

时间:2015-03-10 22:18:36

标签: 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;

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

1 个答案:

答案 0 :(得分:5)

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

for i := 0 to Parameters.Count - 1 do
    Parameters[i].Value := SearchText;