codeigniter框架批量插入数据


Posted in PHP onJanuary 09, 2014
$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 相关文章推荐
用libTemplate实现静态网页的生成
Oct 09 PHP
PHP XML error parsing SOAP payload on line 1
Jun 17 PHP
php中日期加减法运算实现代码
Dec 08 PHP
php中取得文件的后缀名?
Feb 20 PHP
解析smarty模板中类似for的功能实现
Jun 18 PHP
PHP贪婪算法解决0-1背包问题实例分析
Mar 23 PHP
php判断两个日期之间相差多少个月份的方法
Jun 18 PHP
详解WordPress中添加和执行动作的函数使用方法
Dec 29 PHP
详解WordPress开发中的get_post与get_posts函数使用
Jan 04 PHP
php求数组全排列,元素所有组合的方法
May 05 PHP
php smtp实现发送邮件功能
Jun 22 PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 PHP
eaglephp使用微信api接口开发微信框架
Jan 09 #PHP
百度站点地图(百度sitemap)生成方法分享
Jan 09 #PHP
利用phpexcel把excel导入数据库和数据库导出excel实现
Jan 09 #PHP
php将mysql数据库整库导出生成sql文件的具体实现
Jan 08 #PHP
PHP修改session_id示例代码
Jan 08 #PHP
让PHP显示Facebook的粉丝数量方法
Jan 08 #PHP
利用浏览器的Javascript控制台调试PHP程序
Jan 08 #PHP
You might like
PHP 编写的 25个游戏脚本
2009/05/11 PHP
使用PHP计算两个路径的相对路径
2013/06/14 PHP
destoon实现调用热门关键字的方法
2014/07/15 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
php中pcntl_fork创建子进程的方法实例
2019/03/14 PHP
AMD异步模块定义介绍和Require.js中使用jQuery及jQuery插件的方法
2014/06/06 Javascript
javascript实现checkbox全选的代码
2015/04/30 Javascript
纯JS实现弹性导航条效果
2017/03/06 Javascript
详解React Native开源时间日期选择器组件(react-native-datetime)
2017/09/13 Javascript
利用vue + koa2 + mockjs模拟数据的方法教程
2017/11/22 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
2018/10/10 Javascript
详解KOA2如何手写中间件(装饰器模式)
2018/10/11 Javascript
基于JavaScript实现每日签到打卡轨迹功能
2018/11/29 Javascript
AngularJS实现的自定义过滤器简单示例
2019/02/02 Javascript
Vue动态路由缓存不相互影响的解决办法
2019/02/19 Javascript
ES7之Async/await的使用详解
2019/03/28 Javascript
javascript中的数据类型检测方法详解
2019/08/07 Javascript
vue+Element中table表格实现可编辑(select下拉框)
2020/05/21 Javascript
[03:46]显微镜下的DOTA2第七期——满血与残血
2014/06/20 DOTA
[01:29]2017 DOTA2国际邀请赛官方英雄手办展示
2017/03/18 DOTA
python time模块用法实例详解
2014/09/11 Python
12步教你理解Python装饰器
2016/02/25 Python
Python字符串处理实例详解
2017/05/18 Python
老生常谈Python序列化和反序列化
2017/06/28 Python
Flask使用Pyecharts在单个页面展示多个图表的方法
2019/08/05 Python
Python3安装pip工具的详细步骤
2019/10/14 Python
30行Python代码实现高分辨率图像导航的方法
2020/05/22 Python
Python如何爬取qq音乐歌词到本地
2020/06/01 Python
python和c语言哪个更适合初学者
2020/06/22 Python
公司面试感谢信
2014/02/01 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
高中历史教学反思
2014/02/08 职场文书
导师评语大全
2014/04/26 职场文书
县长群众路线对照检查材料思想汇报
2014/10/02 职场文书
党的群众路线教育实践活动个人整改方案
2014/10/25 职场文书
JDBC连接的六步实例代码(与mysql连接)
2021/05/12 MySQL