Savepoints are markers indicating the state of the database at a specific point in the execution of your Apex program. They allow the database to be restored to a known state in case of error or any scenario requiring a reversal of all DML operations performed since the savepoint.
Set a new savepoint using the
Database.setSavepoint method, which returns a Savepoint object. To restore the database to a savepoint, call the
Database.rollback method, which takes a Savepoint object as its only argument.
Several limitations exist on the use of savepoints. The number of savepoints and rollbacks contributes toward the overall limit on DML statements, which is 150. If you create multiple savepoints and roll back, all savepoints created after ...