getConnection(); $con->begin_transaction(); try { $con->query("UPDATE tblsrc SET val = val - 1 WHERE id = 1"); if($i % 2 != 0) throw new Problem(); $con->query("UPDATE tbltrg SET val = val + 1 WHERE id = 1"); $con->commit(); } catch(Problem $ex) { $con->rollback(); echo "Problem\r\n"; } } } } DB::demo(new StandardTransaction()); ?>