在DBGRID中怎样删除选定的记录?

 我来答
沁儿小姐yG
2013-10-20 · 超过61用户采纳过TA的回答
知道答主
回答量:189
采纳率:0%
帮助的人:140万
展开全部
//删除选中的记录varstrSql:string;beginwith TStringList.Create do try
TViewForm1.DBGlist.DataSource.DataSet.First;
while not TViewForm1.DBGlist.DataSource.DataSet.Eof do begin
if TViewForm1.DBGlist.SelectedRows.CurrentRowSelected then
Add(IntToStr(TViewForm1.DBGlist.DataSource.DataSet.RecNo));
TViewForm1.DBGlist.DataSource.DataSet.Next;end;strSql := 'delete * from article where articleID =:id';
while not TViewForm1.DBGlist.DataSource.DataSet.Bof do begin
if IndexOf(IntToStr(TViewForm1.DBGlist.DataSource.DataSet.RecNo)) = 0 then
// TViewForm1.DBGlist.DataSource.DataSet.Delete;
//获得被删除记录的ID(atricleID),并将它删除beginadoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(strSql);
adoquery1.Parameters[0].Value := TViewForm1.DBGlist.DataSource.DataSet.Fields[0].Value;
//adoquery1.Parameters[0].Value := 20;
adoquery1.ExecSQL;end;TViewForm1.DBGlist.DataSource.DataSet.Prior;end;//adoqtv.Refresh;
//TViewForm1.DBGlist.Refresh;
//TViewForm1.DBGlist.DataSource.DataSet.FindFirst;finallyFree;end;end;这是我的改进,现在可以删除记录了,但是再刷新DBGRID时
还是有同样的错误。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式