Thinkphp的事务的理解与应用。为何要应用它呢!可能有些同学还不是很清楚,也包括我在内!
事务就是将数据临时插入数据库,在后续的操作中如果有错误可以利用事务回滚,将先前临时插入的数据取消!就相当于没有插入到数据库中,
如果在后续的操作中没有出现错误,那么只要执行提交事务,就完成了数据的插入操作。
ThinkPHP提供了单数据库的事务支持,如果要在应用逻辑中使用事务,可以参考下面的方法:
启动事务:
$User->startTrans();
提交事务:
$User->commit();
事务回滚:
$User->rollback();
事务是针对数据库本身的,所以可以跨模型操作的 。
例如:
// 在User模型中启动事务
$User->startTrans();
// 进行相关的业务逻辑操作
$Info = M("Info"); // 实例化Info对象
$Info->save($User); // 保存用户信息
if ...