我在Delphi语言中使用TDBgrid,数据集是Adoquery。我有很多ID从1到1000的记录。现在举个例子,我想通过TadoQuery 'Delete from...‘删除第35行。有没有办法立即集中第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;任何人都可以帮忙,非常感谢。
发布于 2011-11-30 17:55:17
如果您使用TClientDataSet (这无论如何都是一个好主意),那么您可以使用FindNearest。
发布于 2011-11-30 18:01:41
首先,保存要删除的元组之前的元组的id。然后删除要删除的元组,然后定位保存的元组。要转到前一个元组,请使用Unicery1.moveby (-1)。
发布于 2011-11-30 18:39:30
删除前保存UniQuery1.RecNo。删除后,重新查询数据集,这将使第一条记录处于活动状态,然后发出UniQuery1.MoveBy(SavedRecNo - 1)或UniQuery1.MoveBy(SavedRecNo - 2),具体取决于您是要移动到已删除记录之后的记录,还是要移动到已删除记录之前的记录。
https://stackoverflow.com/questions/8323977
复制相似问题