我这个怎么循环不了呢

wsh1688 2004-01-14 08:25:33
repeat
form1.ADOQuery2.Last;

if form1.ADOQuery2.FieldByName('价格j').AsString=s1 then
begin

v1:=form1.ADOQuery1.FieldByName('数量s').AsInteger+
form1.ADOQuery2.fieldbyname('数量j').AsInteger;
f1:=v1*form1.ADOQuery2.fieldbyname('单价s').AsCurrency;
c3:=currtostr(f1);
c1:=inttostr(v1);
c2:= form1.ADOQuery2.fieldbyname('单价s').AsString;
form1.ADOQuery1.Post;
SQLStr:= 'insert into '+trim(label1.Caption)+'("数量j","单价j","金额j")'+
' values('+c1+','+c2+','+c3+')';
form1.ADOQuery3.close;
form1.ADOQuery3.SQL.Clear;
form1.ADOQuery3.SQL.Text:=SQLStr;
form1.ADOQuery3.ExecSQL;
break;
end;
showmessage('good');
form1.ADOQuery2.Prior;
until true;
...全文
69 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyfhz 2004-01-14
  • 打赏
  • 举报
回复
repeat...until true
表示“循环...知道true被满足为止”,结果呢,当然是一次执行后就退出啦。
换成repeat...until false试试看,怎么样,是不是死调了?呵呵。
看看你的代码,
repeat(开始)...query.last(重置query)...if(如果不满足break条件)...query.prior(找上一条记录)...until false(再回到上面去循环)...query.last(重置query,怎么搞得,又回到前面的位置了,这样会死掉的???)
wsh1688 2004-01-14
  • 打赏
  • 举报
回复
但是条件不符合他就不退出呀
daemonking 2004-01-14
  • 打赏
  • 举报
回复
你中间用了break退出了循环,怎么去循环呢?

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧