A database transaction is a unit of interaction with a database management system or similar system that is treated in a coherent and reliable way independent of other transactions that must be either entirely completed or aborted. Ideally, a database system will guarantee all of the ACID(Atomicity, Consistency, Isolation, and Durability) properties for each transaction. - from wikipedia

In Doctrine all operations are wrapped in transactions by default. There are some things that should be noticed about how Doctrine works internally: $conn->beginTransaction(); $user = new User(); $user->name = 'New user'; $user->save(); $user = $conn->getTable('User')->find(5); $user->name = 'Modified user'; $user->save(); $conn->commit(); // all the queries are executed here