delphi dbgrid控件
如图如果DBGRID中有第二条记录的话。我想删除第二条记录。怎么做。为什么我如下写总是删除当前第一条记录。user_opquery.Close;user_opquery....
如图如果DBGRID中有第二条记录的话。我想删除第二条记录。怎么做。为什么我如下写总是删除当前第一条记录。
user_opquery.Close;
user_opquery.SQL.Clear;
user_opquery.SQL.Add('select * from user_info');
user_opquery.Open;
user_opquery.delete; 展开
user_opquery.Close;
user_opquery.SQL.Clear;
user_opquery.SQL.Add('select * from user_info');
user_opquery.Open;
user_opquery.delete; 展开
3个回答
展开全部
因为你每次都是新打开数据库,数据库指针都会重置到首条记录,所以,你执行user_opquery.delete;就会删除第一条记录。如果你要删除第二条记录,那么可以这样写
user_opquery.Close;
user_opquery.SQL.Clear;
user_opquery.SQL.Add('select * from user_info');
user_opquery.Open;
user_opquery.RecNo:=2;//定位到第二条记录
user_opquery.delete;
user_opquery.Close;
user_opquery.SQL.Clear;
user_opquery.SQL.Add('select * from user_info');
user_opquery.Open;
user_opquery.RecNo:=2;//定位到第二条记录
user_opquery.delete;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为你每次都是新打开数据库,数据库指针都会重置到首条记录,你可以先选中要删除的记录,再执行:user_opquery.delete;就行了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-04-21
展开全部
user_opquery.Close;
user_opquery.SQL.Clear;
user_opquery.SQL.Add('select * from user_info');
user_opquery.Open;
if user_opquery.recound=2 then
begin
user_opquery.next;
user_opquery.delete;
end
user_opquery.SQL.Clear;
user_opquery.SQL.Add('select * from user_info');
user_opquery.Open;
if user_opquery.recound=2 then
begin
user_opquery.next;
user_opquery.delete;
end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询