如何用adotable彻底删除ACCESS表中的记录

y397526029 2009-05-07 07:15:26
敬请各位高手指点哈,我要删除表中的所有记录,代码如下,但为什么删不完,总要剩几条?谢谢了!

ADOTable2.Active:=True;
ADOTable2.Edit;
while not ADOTable2.Eof do
begin
ADOTable2.Delete;
ADOTable2.Next
end;
...全文
99 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liups 2009-05-12
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yshuui 的回复:]
不用ADOTable2.Next。
[/Quote]
同意,删除一条后,下一条成为当前的,NEXT就跳过去了一条,结果就是删除了大约一半记录。

最好的方法就是3楼的SQL命令,一条语句搞定,不仅代码少,效率还高。LZ的代码反映出多半是学过VFP而且还没学到家
yshuui 2009-05-12
  • 打赏
  • 举报
回复
不用ADOTable2.Next。
僵哥 2009-05-12
  • 打赏
  • 举报
回复
ADOX压缩一下.
qiume 2009-05-12
  • 打赏
  • 举报
回复
直接用SQL最简单......
ysai 2009-05-12
  • 打赏
  • 举报
回复
其实要清空表 还是用SQL好
delete from tablename

truncate table tablename
ysai 2009-05-12
  • 打赏
  • 举报
回复
ADOTable2.Active:=True;
while not ADOTable2.Eof do ADOTable2.Delete;

delete后记录指针会自动移动到下一条的,不用next了
zhangA 2009-05-12
  • 打赏
  • 举报
回复
ADOTable2.Active:=True;
ADOTable2.Edit;


ADOTable2.first;


while not ADOTable2.Eof do
begin
ADOTable2.Delete;
ADOTable2.Next
end;

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧