codeigniter使用技巧批量插入数据实例方法分享


Posted in PHP onDecember 31, 2013
$sub_form = array();
  $loop = 0;
  $ins_loop = 0;
  $sum = count($form_datas);
  $this->logger->info('insert data total:'.$sum);
  //使用事物批量导入有助于提高插入效率
  $callStartTime = microtime(true);
  $this->db->trans_start();
  foreach ( $form_datas as $item ) {
         $loop ++;
         $sub_form[] = $item;
         if(($loop % 200) == 0 || $loop == $sum){
          $this->logger->info('insert data num:'.$loop);
    $res = $this->kb_object_instance_mdl->insert_batch($sub_form,$obj_id);
    $ins_loop ++;
    unset($sub_form);
    if(($ins_loop % 5) == 0){
     $this->logger->info('insert data trans_complete ins_loop:'.$ins_loop);
           $this->db->trans_complete();
           if($loop != $sum){
            $this->db->trans_start();
           }
    }
         }
  }
  //$this->db->trans_complete();
  $callEndTime = microtime(true);
  $callTime = $callEndTime - $callStartTime;
  $this->logger->info('insert data use time:'.sprintf('%.4f',$callTime));
     if($this->db->trans_status() === TRUE){
      $this->_show_msg('1',array('data'=>'import ok'));
     }else{
      $this->_show_error('saveOrUpdate error');
     }
PHP 相关文章推荐
FCKeditor添加自定义按钮
Mar 27 PHP
PHP源码之explode使用说明
Aug 05 PHP
php对数组排序的简单实例
Dec 25 PHP
php保存二进制原始数据为图片的程序代码
Oct 14 PHP
跟我学Laravel之视图 & Response
Oct 15 PHP
php 5.6版本中编写一个PHP扩展的简单示例
Jan 20 PHP
php定义参数数量可变的函数用法实例
Mar 16 PHP
Linux系统下PHP-FPM的安装和配置教程
Aug 17 PHP
PHP常用的小程序代码段
Nov 14 PHP
php设计模式之单例模式代码
Jun 11 PHP
PHP那些琐碎的知识点(整理)
May 20 PHP
Laravel Eloquent ORM 多条件查询的例子
Oct 10 PHP
PHP字符串的连接的简单实例
Dec 30 #PHP
php实现执行某一操作时弹出确认、取消对话框
Dec 30 #PHP
php上传图片到指定位置路径保存到数据库的具体实现
Dec 30 #PHP
php-perl哈希算法实现(times33哈希算法)
Dec 30 #PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 #PHP
md5 16位二进制与32位字符串相互转换示例
Dec 30 #PHP
微信扫描二维码登录网站代码示例
Dec 30 #PHP
You might like
PHP中几种常见的超时处理全面总结
2012/09/11 PHP
PHP反射机制用法实例
2014/08/28 PHP
php接口数据加密、解密、验证签名
2015/03/12 PHP
PHP编程实现多维数组按照某个键值排序的方法小结【2种方法】
2017/04/27 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
js中的值类型和引用类型小结 文字说明与实例
2010/12/12 Javascript
Javascript对象中关于setTimeout和setInterval的this介绍
2012/07/21 Javascript
javascript实现网页背景烟花效果的方法
2015/08/06 Javascript
利用HTML5的画布Canvas实现刮刮卡效果
2015/09/06 Javascript
关于JavaScript作用域你想知道的一切
2016/02/04 Javascript
JS实用技巧小结(屏蔽错误、div滚动条设置、背景图片位置等)
2016/06/16 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
2016/06/24 Javascript
Bootstrap CSS组件之输入框组
2016/12/17 Javascript
JavaScript方法_动力节点Java学院整理
2017/06/28 Javascript
boostrap模态框二次弹出清空原有内容的方法
2018/08/10 Javascript
VUE DOM加载后执行自定义事件的方法
2018/09/07 Javascript
gulp构建小程序的方法步骤
2019/05/31 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python读取csv文件示例(python操作csv)
2014/03/11 Python
Python中的异常处理相关语句基础学习笔记
2016/07/11 Python
高效使用Python字典的清单
2018/04/04 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
Django如何使用第三方服务发送电子邮件
2019/08/14 Python
python实现图片二值化及灰度处理方式
2019/12/07 Python
python matplotlib 绘图 和 dpi对应关系详解
2020/03/14 Python
养殖行业的创业计划书
2014/01/05 职场文书
自我评价的写作规则
2014/01/06 职场文书
工程质量承诺书
2014/03/27 职场文书
广播节目策划方案
2014/05/23 职场文书
法学专业毕业实习自我鉴定2014
2014/09/27 职场文书
2014年大班保育员工作总结
2014/12/02 职场文书
婚宴领导致辞
2015/07/28 职场文书
公司中层管理培训心得体会
2016/01/11 职场文书
MySQL时间盲注的五种延时方法实现
2021/05/18 MySQL
elementui的el-popover修改样式不生效的解决
2021/06/30 Javascript