/* 以下代码能不能看懂, 就看你基本功(资)的高低了, 哈~~~ */
public function testUpdateInOneTransaction( )
{
$r = str_random(6);
try {
DB::connection('mysql')->beginTransaction();
DB::connection('mysql_other')->beginTransaction();
// more connection ...
$u1 = FinalUser::find(30240);//use mysql_other
$u1->name = $r;
$u1->save();
//1 / 0;
$u2 = FinalUser2::find(30241);//use mysql
$u2->name = $r;
$u2->save();
//1 / 0;
$u3 = FinalUser::find(30242);//use mysql_other
$u3->name = $r;
$u3->save();
1 / 0; // throw a exception...
$u4 = FinalUser2::find(30243);//use mysql
$u4->name = $r;
$u4->save();
DB::connection('mysql')->commit();
DB::connection('mysql_other')->commit();
// more connection ...
} catch (Exception $exception) {
DB::connection('mysql')->rollBack();
DB::connection('mysql_other')->rollBack();
// more connection ...
// some codes...
}
}