在Delphi中创建数据集运行时

我正在优化我的系统,并且试图做一种更加动态的数据集创建形式来进行插入,更新,删除甚至搜索。我能够到达这里尝试插入,但是即使我已经将它定向到Clientdataset,也会发生DatasetProvider错误,并且在打开TClientdataset时发生错误:

procedure TF_Teste.Button1Click(Sender: TObject);
VAR
  sdsTemp : TSQLDataSet;
  dspTemp : tdatasetProvider;
  cdsTemp : TClientdataset;
  dsTemp : TDataSource;
begin
  try
    //Cria o TSQLDataSet
    sdsTemp := TSQLDataSet.Create(nil);
    sdsTemp.SQLConnection := DMPrin.HYPERBD;
    sdsTemp.Close;
    sdsTemp.CommandText := 'SELECT * FROM CLIENTE';

    //Cria o tdatasetProvider
    dspTemp := tdatasetProvider.Create(nil);
    dspTemp.Name := 'dspProvider';
    dspTemp.DataSet := sdsTemp;
    dspTemp.Options := dspTemp.Options + [poAllowCommandText];
    dspTemp.Options := dspTemp.Options + [poUseQuoteChar];

    //Cria o TClientdataset
    cdsTemp := TClientdataset.Create(nil);
    cdsTemp.ProviderName := dspTemp.Name;

    cdsTemp.Open; //nesse momento ocorre o erro de "Missing dataset provider ou data packet"
    cdsTemp.Append;
    cdsTemp.FieldByName('NOME').AsString := 'Teste dataset';
    cdsTemp.ApplyUpdates(0);
  finally
    FreeAndNil(sdsTemp);
    FreeAndNil(dspTemp);
    FreeAndNil(cdsTemp);
  end;
end;

我仍将通过将其放入函数中来进一步优化代码,但现在我只是想使其发挥作用。 您能帮我解决这个问题吗? 预先谢谢你。

iCMS 回答:在Delphi中创建数据集运行时

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2086868.html

大家都在问