我在Delphi中使用TDBgrid
,数据集是Adoquery
。我有很多记录,其ID从1到1000.现在我想删除35号TadoQuery
'删除...'有没有办法立即关注客户的第34或第36条记录检查第35个是否已被删除。
这是我删除按钮的代码
StudentID := UniQuery1.FieldValues['StudentID'];
UniQuery1.SQL.Clear();
UniQuery1.SQL.Text :=('Delete from Student where StudentID = ''' + StudentID + '''');
UniQuery1.SQL.Add('select * from Student');
UniQuery1.Execute;
任何人都可以提供帮助,非常感谢你。
答案 0 :(得分:2)
如果您使用TClientDataSet(无论如何这是一个好主意),您可以使用FindNearest。
答案 1 :(得分:0)
首先,将元组 previous 的id保存到您要删除的ID。然后删除要删除的元组,然后找到保存的元组。要转到上一个元组,请使用uniquery1.moveby(-1)。
答案 2 :(得分:0)
删除前保存UniQuery1.RecNo
。删除后,重新查询数据集,该数据集应设置第一个记录处于活动状态,然后发出UniQuery1.MoveBy(SavedRecNo - 1)
或UniQuery1.MoveBy(SavedRecNo - 2)
,具体取决于您是要移动到成功记录还是删除记录之前。