thinkphp5 事务的写法

浏览:3686 发布日期:2019/01/03 分类:求助交流 关键字: 事务
最近在做一个大数据量的事务提交,主要功能是从文件中读取数据,处理后插入数据库,这块有个有趣的问题,事务中是否可以多次提交呢?目前我就是这么做的也不知道对不对。
先贴我目前的代码:
$file = new File($resFilename);
$file->seek(PHP_INT_MAX);
$maxLine = $file->key();
$file->seek(0);//定位到开头
$row = 0;
Db::startTrans();
try{
while(true){
$row++;
if($row > $maxLine || $file->eof()){
//文件结束如果没有到10000条,也提交
Db::commit();
break;
}
//插入数据
Db::table('testable')>insertAll($testdata);
if($row % 10000==0){
//10000条数据插入一次
Db::commit();
}
}
}catch (\Exception $e){
Db::rollback();
}
这种写法不知道对不对,我看一般事务只提交一次。
最佳答案
评论() 相关
后面还有条评论,点击查看>>