请选择 进入手机版 | 继续访问电脑版

Lazarus中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Lazarus IDE and 组件 下载地址版权申明
查看: 243|回复: 1

导入临时表,超过3万条出错提示。

[复制链接]

该用户从未签到

发表于 2021-4-19 21:03:44 | 显示全部楼层 |阅读模式
sqlstr:='select * from '+frmsmain.curtable+' where PrimayGuid='+quotedstr('123456789');
      sql_import.close;
      sql_import.sql.clear;
      sql_import.sql.add(sqlstr);
      sql_import.open;
      k:=0;
      while not buf_import_onetable.EOF do
      begin
        try

          //超过三万条会出错  
         if ((k mod 10000)=0)and(k>0) then   //每一万条滚动一次
         begin
           sql_import.ApplyUpdates ;
           frmsmain.SQLTran.CommitRetaining ;
         end;

         
          CreateGUID(guid1);
          sql_import.Append;
          sql_import.FieldByName('PrimayGuid').Value:=GUIDToString(guid1);   
          .....

          sql_import.Post ;

          inc(k);
        except
          memo1.Lines.add('数据导入第'+inttostr(k+1)+'条时失败;');
        end;

        buf_import_onetable.Next ;
        frmsmain.Progressstepby(PBar1) ;

        application.ProcessMessages ;
     end;                                 
           
回复

使用道具 举报

该用户从未签到

 楼主 发表于 2021-4-19 21:11:18 | 显示全部楼层

RE: 导入临时表,超过3万条出错提示。

添加  
每万条滚动保存一次,问题解决。特此记录。
回复 支持 反对

使用道具 举报

QQ|手机版|小黑屋|Lazarus中国|Lazarus中文社区 ( 鄂ICP备16006501号-1

GMT+8, 2021-6-22 07:07 , Processed in 0.049383 second(s), 24 queries .

Powered by Discuz! F1.0 Build 20160930

© 2001-2021 Comsenz Inc. & Discuz! Fans

快速回复 返回顶部 返回列表