Otro matiz, creo que la "select" del "insert" ha de ir con parénteis.
Código Delphi
[-]
procedure TForm1.Button2Click(Sender: TObject);
begin
with Query1 do begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO detfactfinal');
SQL.Add('(SELECT * FROM detfactura)');
ExecSQL;
Close;
SQL.Clear;
SQL.Add('DELETE detfactura');
ExecSQL;
end;
end;
Además, si la base de datos es Sql Server, se debe poner la lista de campos de las tablas
Código Delphi
[-]
procedure TForm1.Button2Click(Sender: TObject);
begin
with Query1 do begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO detfactfinal (Numdetfact, Numfact, Cod_art, Cantidad');
SQL.Add('(SELECT Numdetfact, Numfact, Cod_art, Cantidad FROM detfactura)');
ExecSQL;
Close;
SQL.Clear;
SQL.Add('DELETE detfactura');
ExecSQL;
end;
end;