win2k+Delphi5+SQL Server 2k
Delphi:
DBGRID,ADOQuery
现在我想通过ADOQuery对DBGRID中的记录直接进行删除操作!但是运行时老是删除失败!不知道ADOQuery的这两个方法怎么用,请赐教!
...
if DM.DModule.qryDelete.Active=True Then
begin
DM.DModule.qryDelete.DeleteRecords;//关键就是这句!
DM.DModule.qryAddr.Refresh;
end
else begin
ShowMessage('删除失败!');
DM.DModule.qryDelete.Active:=True ;
Exit;
end;
...
Delphi:
DBGRID,ADOQuery
现在我想通过ADOQuery对DBGRID中的记录直接进行删除操作!但是运行时老是删除失败!不知道ADOQuery的这两个方法怎么用,请赐教!
...
if DM.DModule.qryDelete.Active=True Then
begin
DM.DModule.qryDelete.DeleteRecords;//关键就是这句!
DM.DModule.qryAddr.Refresh;
end
else begin
ShowMessage('删除失败!');
DM.DModule.qryDelete.Active:=True ;
Exit;
end;
...
DM.DModule.qryAddr.Refresh;
这句出错了!
Erro:数据源中此行的键值已经被删除或修改,现在本地行被删除!
在数据库中确实被删除了!@
你可以这样做
Adoquery1.Sql.Text := 'delete * from 表 where 条件';
adoquery1.execsql;
这样就可以了
另外,我想每次打开这个窗体的时候dbgrid中不要显示任何值,怎么做到?
另外,我想每次打开这个窗体的时候dbgrid中不要显示任何值,怎么做到?"把dbgrid的DataSource属性值设为空不就得了,到需要用的时候再写码设置
用adoquery1.Refresh;不行的话就直接关掉再打开。adoquery1.close;
adoquery1.open;
2:在formshow事件写adoquery1.active:=false3: 搞定 给分吧。