当我们需要同时对多个表进行操作的时候就有必要进行事务处理,首先你的数据库和数据表必须满足事务处理,即表引擎为InnoDB
下面为一个demo
//事务:表必须是innodb
//删除主表
$mod1 = M('User');
//删除详情表
$mod2 = M('Userdetail');
$mod1->startTrans();//开启事务
if(!$mod1->delete($id)){
$mod1->rollback();
$this->error('删除失败');
}
if(!$mod2->delete($id)){
$mod2->rollback();
$this->error('删除失败');
}
$mod1->commit();
$mod2->commit();