When an insert, update, or delete operation is made to the database, the Oracle Server takes a copy of the data before it is changed and writes it to a undo segment.
All readers, except the one who issued the change, still see the database as it existed before the changes started; they view the undo segment’s snapshot of the data.
When a DML statement is committed, the change made to the database becomes visible to anyone executing a SELECT statement. The space occupied by the "old" data in the undo segment file is freed for reuse.
If the transaction is rolled back, the changes are undone:
The original, older version, of the data in the undo segment is written back to the table.
All users see the database as it existed before the transaction began.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/271063/viewspace-908953/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/271063/viewspace-908953/