在delphi中我用DBGrid选择多条记录,如何一次把选择的多条记录删掉

pengxuan 2004-01-31 02:46:38
如题.
...全文
131 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
surdon 2004-02-02
  • 打赏
  • 举报
回复
UP
onebody 2004-02-02
  • 打赏
  • 举报
回复
UP
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
我的这段程序是这样的.

procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage('删除前记录数:'+IntToStr(ADOQuery1.RecordCount));
try
DBGrid1.SelectedRows.Delete;
except

end;
ADOQuery1.Close;
ADOQuery1.Open;
ShowMessage('删除后记录数:'+IntToStr(ADOQuery1.RecordCount));
end;
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
如果数据库表中有所有的记录都有几条一模一样的记录,那么删除就不好用了.
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
yimoo(剑锋) 我已经给你发过去了.
yimoo 2004-01-31
  • 打赏
  • 举报
回复
回复人: pengxuan(追梦人) ( ) 信誉:100 2004-01-31 16:24:00 得分:0


yimoo(剑锋) 我有一个文件,不如你拿去试试吧.留下邮箱地址.


我的邮箱:yimoo◎fc18.com

发过来我看看吧!
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
假如你的数据库表中的每条记录都有重复的一模一样的好几条,那么删除就不好用了.
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
我也试过,有时好用,有时就不好用,不知道为什么.
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
yimoo(剑锋) 我有一个文件,不如你拿去试试吧.留下邮箱地址.
haipin 2004-01-31
  • 打赏
  • 举报
回复
procedure TForm1.btnDoSumClick(Sender: TObject);
var
i: Integer;
begin
if DBGrid1.SelectedRows.Count > 0 then
begin
with DBGrid1.DataSource.DataSet do
begin
for i := 0 to DBGrid1.SelectedRows.Count-1 do
begin
GotoBookmark(Pointer(DBGrid1.SelectedRows.Items[i]));
self.ADOQuery1.Delete;//删除记录
end;
end;
end
end;
dezhouxiao1981 2004-01-31
  • 打赏
  • 举报
回复
up yimoo
zmonarch 2004-01-31
  • 打赏
  • 举报
回复
等待......
试着做个循环看看
yimoo 2004-01-31
  • 打赏
  • 举报
回复
你得到的是什么错误提示呢?
我测试过了!是ADOConnection+ADOTable+DataSource+DBGrid!
绝对是可行的!

说出一个不行的理由先!
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
我是说 yimoo(剑锋) 提供的方法好像不行
pengxuan 2004-01-31
  • 打赏
  • 举报
回复
楼上的兄弟,这个不是很好用.
yimoo 2004-01-31
  • 打赏
  • 举报
回复
我刚做完测试的!好像是可以的呀!
fxjpost 2004-01-31
  • 打赏
  • 举报
回复
yimoo(剑锋) 好像不是吧
yimoo 2004-01-31
  • 打赏
  • 举报
回复
DBGrid1.SelectedRows.Delete;

5,388

社区成员

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

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