【发布时间】:2015-11-26 11:22:25
【问题描述】:
使用fireDac,有没有更简单的方法将FDQuery复制到FDQuery?
目前的硬编码解决方案是将代码中的每个字段映射到代码中的其他字段并发布和编辑等。
var
FDQueryThis,FDQueryOther:TFDQuery;
begin
FDQueryThis.active:=true;
FDQueryOther.active:=true;
FDQueryThisNamelyField.AsInteger := FDQueryThis.NamelyField.AsInteger;
// some more fields
FDQueryThis.post;
end;
是否有提供此服务的工具或功能? 我确实看到 CopyRecord 是 TFDQuery 的成员,但是如何为 TFDQuery 创建记录?
【问题讨论】:
-
TFDQuery.CopyDataSet?
-
在
TDataSet中有一个函数CopyFields,但这仍然需要在目标数据集上调用Edit和Post。 CopyRecord 做了类似的事情。 为 TFDQuery 创建记录 是什么意思? -
能否提供示例代码?如果我们跳过映射,这是 90% 的工作。编辑和发布只是一小部分。
-
复制一条记录很简单(假设字段名和字段类型相同,并且要将sourceDS的当前记录的内容复制到targetDS的当前记录中):
targetDS.Edit;targetDS.CopyFields(sourceDS);@ 987654328@
标签: delphi delphi-xe7 firedac