delphi 如何从FDbatchmove附加中排除主键字段?

5fjcxozz  于 2022-11-04  发布在  其他
关注(0)|答案(1)|浏览(143)

当我想通过FDbatchMove组件将源表追加到目标表时, Delphi 引发了这个异常:“[FireDac][物理][SQLite]错误:UNIQUE约束失败:AG2.M_key”。AG2.M_Key是我的表的主键。如果我可以从批移动中排除主键,也许可以解决问题。我该如何做呢?

cyvaqqii

cyvaqqii1#

通过这个代码,我可以从FDbatchmove append中排除'm_key'字段:

var ind:integer;
begin
 FDBatchMove1.Mappings.Clear;
 FDBatchMove1.Mappings.AddAll;
 ind:=FDBatchMove1.Mappings.IndexOfName('m_key');
 if ind<>-1 then
  FDBatchMove1.Mappings.Delete(ind);
 FDBatchMove1.Execute;
end

相关问题