可以实现。
在你向table2中添加时。
query1.clear;
query1.sql.clear;
query1.sql.add('select * from table1 where name=:name1');
query1.fieldbyname('name1').asstring:=trim(edit1.text);
query1.open;
if not query1.eof then
begin
  with table2 do
  begin
    open;
    insert;
    edit;
    fieldbyname('id').asstring:=query1.fieldbyname('id').asstring;
    fieldbyname('name').asstring:=query1.fieldbyname('name').asstring;
    ....
    post;
    close;
  end;
end
else
begin
执行向table2中的添加记录。
执行添加时,参数为自己给出的数据(如在edit中输入的数据等)。
end;