yii如何使用事务,begin,commit,rollback

我们在数据库的使用中, 经常是使用事务的操作来保证数据的一致性, 那么在Yii中, 怎么使用事务呢, 其实很简单.

$transaction = Yii::app()->db->beginTransaction(); //创建事务
$transaction->commit(); //提交事务
$transaction->rollback(); //回滚事务
 
// 以下实例将需要事务处理的操作放进try里
 
$transaction = Yii::app()->db->beginTransaction();
try {
$a = XXX::model()->findByPk(X);
$a->x = 1;
$a->update();
$b = YYY::model()->findByPk(Y);
$b->y = 2;
$b->update();
 
$transaction->commit(); //提交事务会真正的执行数据库操作
} catch (Exception $e) {
$transaction->rollback(); //如果操作失败, 数据回滚
}
若您觉得我的博文对您有帮助,欢迎点击下方按钮对我打赏
打赏