|PL/SQL User's Guide and Reference
Part Number A89856-01
PL/SQL Language Elements, 10 of 52
COMMIT statement explicitly makes permanent any changes made to the database during the current transaction. Changes made to the database are not considered permanent until they are committed. A commit also makes the changes visible to other users. For more information, see "Overview of Transaction Processing in PL/SQL".
This keyword specifies a comment to be associated with the current transaction and is typically used with distributed transactions. The text must be a quoted literal no more than 50 characters long.
This keyword is optional and has no effect except to improve readability.
COMMIT statement releases all row and table locks. It also erases any savepoints you marked since the last commit or rollback. Until your changes are committed, the following conditions hold:
ROLLBACKstatement to roll back (undo) the changes.
If you commit while a
UPDATE cursor is open, a subsequent fetch on that cursor raises an exception. The cursor remains open, however, so you should close it. For more information, see "Using FOR UPDATE".
When a distributed transaction fails, the text specified by
COMMENT helps you diagnose the problem. If a distributed transaction is ever in doubt, Oracle stores the text in the data dictionary along with the transaction ID. For more information about distributed transactions, see Oracle9i Database Concepts.
In SQL, the
FORCE clause manually commits an in-doubt distributed transaction. However, PL/SQL does not support this clause. For example, the following statement is illegal:
In embedded SQL, the
RELEASE option frees all Oracle resources (locks and cursors) held by a program and disconnects from the database. However, PL/SQL does not support this option. For example, the following statement is illegal:
ROLLBACK Statement, SAVEPOINT Statement