哪種DML操作產生undo多

keeptrying發表於2012-04-09
The number of bytes required to store information that is needed in case of rollback depends
on the type of transaction being performed:

Deletes are expensive for rollback segments; they need to store the actual row itself. If you can use TRUNCATE instead, performance is improved.

Inserts use little rollback space; only the rowid is kept.

The amount used for updates depends on how many columns are being updated.

Indexed values generate more rollback, because the server process must change values
in the index as well as in the table. For updates on indexed columns, the Oracle server
records in the rollback segment the old data value, the old index value, and the new
index value. Updating rows that change partitions will also generate more rollback.

Direct path inserts / appends / loads are not likely to use much rollback.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25744374/viewspace-720747/,如需轉載,請註明出處,否則將追究法律責任。

相關文章