事务操作
开启事务
传参说明
| 参数名 | 是否必须 | 参数说明 |
|---|---|---|
| connectionNames | 否 | 开启事务的连接名称; string或者array 在addConnection时指定。一般情况下无需特别设置 |
返回说明:bool 开启成功则返回true,开启失败则返回false
DbManager::getInstance()->startTransaction($connectionNames = 'default');
提交事务
传参说明
| 参数名 | 是否必须 | 参数说明 |
|---|---|---|
| connectName | 否 | 指定提交一个连接名,若不传递,则自动提交当前协程内获取的事务连接。 一般情况下无需特别设置 |
返回说明:bool 提交成功则返回true,失败则返回false
DbManager::getInstance()->commit($connectName = null);
回滚事务
传参说明
| 参数名 | 是否必须 | 参数说明 |
|---|---|---|
| connectName | 否 | 指定提交一个连接名,若不传递,则自动提交当前协程内获取的事务连接。 一般情况下无需特别设置 |
返回说明:bool 提交成功则返回true,失败则返回false
DbManager::getInstance()->rollback();
事务用例
$user = UserModel::create()->get(4);$user->age = 4;// 开启事务$strat = DbManager::getInstance()->startTransaction();// 更新操作$res = $user->update();// 不管更新成功还是失败,直接回滚$rollback = DbManager::getInstance()->rollback();// 返回false 因为连接已经回滚。事务关闭。$commit = DbManager::getInstance()->commit();var_dump($commit);
