Yii中的数据库事务的使用方法小结

在项目中遇到批量删除的地方一般会使用到事务,下面列举一个用法实例与大家分享。

01 <?php
02 $array=array(
03     0=>array('username'=>'phpernote.com_0','password'=>'123456'),
04     1=>array('username'=>'u_1','password'=>'123456'),
05     2=>array('username'=>'u_2','password'=>'123456')
06 );
07 $transaction=Yii::app()->db->dbConnection->beginTransaction();
08 //此处db代表的是定义在main.php中的数据库连接对象db
09 try{
10     Yii::app()->db->createCommand()->insert('tbl_user',$array[0]);
11     Yii::app()->db->createCommand()->insert('tbl_user',$array[1]);
12     Yii::app()->db->createCommand()->insert('tbl_user',$array[2]);
13     $transaction->commit();
14 }catch(Exception $e){
15     $transaction->rollback();
16 }

注意:如果你使用的是MySQL数据库,那么表引擎必须是innodb类型的,因为MySQL数据库的MyISAM引擎不支持事务处理,所以如上代码不会达到预想的目的。

原文地址:https://www.cnblogs.com/xieqian111/p/5217575.html