What causes a rollback

Rollbacks can occur either due to an explicit user request, or automatically.

You use a ROLLBACK statement to undo any changes to the database since the last COMMIT or ROLLBACK.

You use a ROLLBACK TO SAVEPOINTstatement to undo any changes to the database since the SAVEPOINT you name, or else to the last SAVEPOINT.

Sybase IQ rolls back the database automatically if a user is in a transaction and then logs out or disconnects without committing. The rollback is to the most recent commit or rollback.