Access数据库的菜鸟问题(在线)
我做一个可以让Access数据库里的记录可以上下移动的东西。但是老出错,请大家看看,并指出错误:
procedure TfmItemDef.UpBtnClick(Sender: TObject);
begin
adoStrT.Open;
sn:=adoStrT.Fields[0].AsString;
n:=adoStrT.Fields[1].AsString;
t:=adoStrT.Fields[2].AsString;
adoStrT.Prior;
if adoStrT.Bof then exit;
sn1:=adoStrT.Fields[0].AsString;
n1:=adoStrT.Fields[1].AsString;
t1:=adoStrT.Fields[2].AsString;
adoStrT.Edit;
adoStrT.Fields[0].AsString:=sn;
adoStrT.Fields[1].AsString:=n;
adoStrT.Fields[2].AsString:=t;
adoStrT.Next;
adoStrT.Edit;
adoStrT.Fields[0].AsString:=sn1;
adoStrT.Fields[1].AsString:=n1;
adoStrT.Fields[2].AsString:=t1;
adoStrT.Prior;
adoStrT.Post;
DBGrid1.SetFocus;
end;
procedure TfmItemDef.DnBtnClick(Sender: TObject);
begin
if Not adoStrT.IsEmpty then
begin
sn:=adoStrT.Fields[0].AsString;
n:=adoStrT.Fields[1].AsString;
t:=adoStrT.Fields[2].AsString;
adoStrT.next;
if adoStrT.eof then exit;
sn1:=adoStrT.Fields[0].AsString;
n1:=adoStrT.Fields[1].AsString;
t1:=adoStrT.Fields[2].AsString;
adoStrT.Edit;
adoStrT.Fields[0].AsString:=sn;
adoStrT.Fields[1].AsString:=n;
adoStrT.Fields[2].AsString:=t;
adoStrT.Prior;
adoStrT.Edit;
adoStrT.Fields[0].AsString:=sn1;
adoStrT.Fields[1].AsString:=n1;
adoStrT.Fields[2].AsString:=t1;
adoStrT.next;
end;
end;