我做了一个程序,用ADOQuery1作记录集,用dbgrid来显示记录,用ADOQuery2进行添加、删除和修改,但每次删除后,dbgrid不能自动更新,我用ADOQuery1.Close和ADOQuery1.Open来使Dbgrid更新,但是记录指针就变到第一个,如何使修改的时候,指针仍在当前记录;删除后指针到上一个记录;添加后指针到添加的记录;我可以得到当前记录的编号,但用遍历效果太差。请问作到类似的效果,怎样比较好,但添加、删除和修改一定要用SQL来写,就是说必须用啊ADOQuery,其他的都可以不用。谢谢
为什么添加、删除和修改一定要用SQL来写?
检索出数据后就可以象ADOTABLE一样操作啊
在不button中
i:=adoquery1.recno;
adotable2.recno:=i;
adotable2.delete;
adotable1.close;
adotable1.open;
adotable1.recno:=i-1;
这样就可以了
执行相应操作前设置 I := adoquery1.recno;
删除操作后用 adotable1.recno:=i-1;
插入操作后用 adotable1.recno:=i+1;
Book:=adoquery1.GetBook;
adoquery1.GotoBook(Book);