During which DML operation ( Insert,update and delete) which is the most undo and redo generated and why.
Tom said...
it depends :)
all you have to do however is think about what happens during each operation under different conditions - then you can sort of guestimate what will happen.
it depends :)
all you have to do however is think about what happens during each operation under different conditions - then you can sort of guestimate what will happen.
during an insert - we have to generate undo equivalent to "delete+rowid"
during an update - we have to generate undo equivalent to "update this rowid to have these before image values" (undo = rowid + column before images)
during a delete - we have to generate undo equivalent to "insert at this rowid these values"
so, considering an unindexed table - IN GENERAL, a delete and update will generate the most and an insert the least. IN GENERAL this is true (but not always).
if you add indexes - everything can change. the insert might generate gobs of undo for the index maintenance - the update might not update any indexed columns and hence only generate undo for the table - and the delete might have to maintain all of the indexes generating tons of undo again.
so, it depends on the nature of the data, what you are inserting/updating/deleting..
same for redo. It depends on what is modified...
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28278387/viewspace-749161/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/28278387/viewspace-749161/