数据库中每口井有一个字段名成是深度,为了画图需要,深度之间的间隔若是超过0.3就要在上一个深度值下面插入一新列,其中深度=上一口井的深度+ 0.3 例如上一个深度值为  1005.6 下一个深度值为1006.9  那么在两个记录之间要插入1005.9,这个值的纪录  除了深度值与上一个记录不同之外其余全为上一条记录  这个功能我已经实现 程序如下:但是如何在最后一条记录后面插入一条 我没有实现 请大家指点一下 在那里改可以在最后一条后面也增加一个记录
procedure TForm1.Button1Click(Sender: TObject);
var
sflat:double;
a,b,c,d:string;
i,j:integer;
begin
with adoquery1 do
begin
  Close;
  SQL.Clear;
  SQL.Add('select * from aaa where jh='''+edit1.text+''' order by gwjs asc');
  open;
  first;
  j:=0;    //用来计算跳转次数
  for i:=0 to adoquery1.RecordCount-1 do
  begin
    a:=fieldbyname('jh').AsString;
    b:=fieldbyname('ypwz').AsString;
    c:=fieldbyname('cw').AsString;
    d:=fieldbyname('ch').AsString;
    sflat:=fieldbyname('gwjs').AsFloat;
    next;
    if fieldbyname('gwjs').AsFloat-sflat>0.3 then
    begin
      adoquery1.Insert;
      adoquery1.FieldByName('jh').AsString:=a;
      adoquery1.FieldByName('ypwz').AsString:=b;
      adoquery1.FieldByName('cw').AsString:=c;
      adoquery1.FieldByName('ch').AsString:=d;
      adoquery1.FieldByName('gwjs').AsString:=floattostr(sflat+0.3);      adoquery1.post;    //到最后一条
      adoquery1.First;
      j:=j+1;
      showmessage(inttostr(j));
      adoquery1.MoveBy(j);
    end;  end;end;