Я использую ADOTable а не ADOQuery
Попытлся с помощью ADOTable
Код:
procedure TForm3.ToolButton19Click(Sender: TObject);
var s,d,f,g,h,j: string;
a:integer;
begin
s:= datamodule4.ADOTable1.Fields.Fields[1].AsString;
d:= datamodule4.ADOTable1.Fields.Fields[2].AsString;
f:= datamodule4.ADOTable1.Fields.Fields[3].AsString;
g:= datamodule4.ADOTable1.Fields.Fields[4].AsString;
h:= datamodule4.ADOTable1.Fields.Fields[5].AsString;
j:= datamodule4.ADOTable1.Fields.Fields[6].AsString;
datamodule4.ADOTable1.Last;
a:= (datamodule4.ADOTable1.Fields.Fields[0].AsInteger + 1);
datamodule4.ADOTable1.Active:=false;
datamodule4.ADOTable2.Active:=true;
datamodule4.ADOTable2.Insert;
datamodule4.ADOTable2.Fields.Fields[0].AsInteger:=a;
datamodule4.ADOTable2.Fields.Fields[1].AsString:=s;
datamodule4.ADOTable2.Fields.Fields[2].AsString:=d;
datamodule4.ADOTable2.Fields.Fields[3].AsString:=f;
datamodule4.ADOTable2.Fields.Fields[4].AsString:=g;
datamodule4.ADOTable2.Fields.Fields[5].AsString:=h;
datamodule4.ADOTable2.Fields.Fields[6].AsString:=j;
datamodule4.ADOTable2.Post;
datamodule4.ADOTable2.Active:=false;
datamodule4.ADOTable1.Active:=true;
datamodule4.ADOtable1.Active:=false;
datamodule4.ADOtable1.Active:=true;
Но у меня не получается с переменной "а" т.к при копировании копируются все поля а значение поля равное переменной "а" ключевое и поэтому приходиться добавлять +1 запись, но почему-то прога дает скопировать раз 5-7 потом выдает ошибку нужно её перезагружать... В чем косяк может быть?