收录日期:2018/12/15 03:58:12 时间:2016/05/24 00:06:39 标签:数据库相关
代码如下,主要功能就是用qry1中的'Unit'匹配qry2中的‘minunit’,‘maxunit’匹配成功后,更新qry1的‘res’字段
procedure TForm1.Button1Click(Sender: TObject);
var
 bigorsmall,res,count:integer;
begin
  bigorsmall:=0;
  count:=0;
  qry2.Close;
   qry2.SQL.Clear;
   qry2.SQL.Add('select minunit,maxunit,num,bidid from zbfw ');
   qry2.Open;
  with qry1 do
  begin
     close;
     sql.clear;
     sql.add('select id,bidid,unit,amount,res1 from sumry1 ');
     open;
  end;
  gauge1.MaxValue:=qry1.RecordCount;
  while not qry1.eof do
    begin
       qry2.Filtered:=false;
       qry2.Filter:='';
       qry2.Filter:='bidid='+trim(qry1.fieldbyname('bidid').AsString);
       qry2.Filtered:=true;
       //匹配大小单位
       try
       if qry1.Fieldbyname('unit').AsString=qry2.Fieldbyname             ('minunit').AsString then
          bigorsmall:=1;
       if qry1.Fieldbyname('unit').AsString=qry2.Fieldbyname('maxunit').AsString  then
          bigorsmall:=2;
       except
         showmessage('unit='+qry1.fieldbyname('unit').AsString+',minunit='+qry2.fieldbyname('minunit').AsString+',maxunit='+qry2.fieldbyname('maxunit').AsString+'出错');

       end;
       if bigorsmall=2 then
          res:=qry1.fieldbyname('amount').AsInteger*qry2.fieldbyname('num').AsInteger
       else
          if bigorsmall=1 then
             res:=qry1.fieldbyname('amount').AsInteger
          else
             res:=-1;
        label2.Caption:='amount='+qry1.fieldbyname('amount').AsString+',res='+intTostr(res);
       //更新res字段
       qry1.Edit;
       qry1.FieldValues['res1']:=res;
       qry1.Post;
        //
        qry1.Next;
       count:=count+1;
       application.ProcessMessages;
       label1.Caption:=intTostr(count)+'/'+intTostr(qry1.RecordCount);
       gauge1.Progress:=count;
    end;
   showMessage('完成!~') ;
end;
问题是,程序运行后,发现sumry1表(qry1连接的表)的res字段很多没有被更新(90%以上),跟踪程序,发现每次res有产生正确的值,但是qry1没有写进数据库!请高手指教一下

asp.net如何弹出模态窗口显示进度条? 检测图片里面的直线对(绿线在上蓝线在下的是一个有效线对) 网站头部用JAVA的脚本来实现 sqlserver 把服务器很搞得慢 如何解决【无法定位程序输入点 _except_handler4_common 于动态链接库 msvcrt.dll 上】问题? EXCEL 连接数据库连接不成功 谁能帮忙把几句shell脚本程序翻译成python脚本 求助:如何在sql server中合并查询出的数据? 求助:关于在c++中调用shell脚本的问题 如果设置增加一个字段,并设置为主键 JavaScriptSerializer 序列化json 时间格式 server 2008服务器打不开另一台服务器发布的网站? 成都三泰有没有了解的啊?有没有最近新进去的朋友? ListPreference单项显示两行 dataset的传递 ACtiveX控件 白菜价出手,经典的c++和系统编程书,广州 CMarkup遍历xml问题? 运用asp.net语言,如何群发邮件 快下班了 白菜价,广州,经典的c++和系统编程书 如何通过qtableview和qsqltablemodel向数据库插入数据? WideCharToMultiByte 中的参数问题 DBGrideh单元格显示颜色 纠结的页面失效问题,附错误信息,麻烦高手帮分析下! 求一个sql!!!!!!!! 关于JS与android交互的问题 我在广州,白菜价卖出经典的c++和系统编程书 myeclipse怎样搜索出哪个文件没有check in??????? Toolbar 控件图标问题