Results 1 to 2 of 2
  1. #1
    Join Date
    Sep 2010
    Posts
    153

    Smile Unanswered: Rterieving data before committing a transaction.

    Hi guys,

    After a successful transaction (after committing), i found that i sent wrong records of one the column (wrongly updated). How do i get back my initial stage? i mean, how do i get back all the previous results? Is there a way to retrieve my previous data which were before committing a transaction?


    Thanks in advance

  2. #2
    Join Date
    Mar 2007
    Posts
    623
    Hi,

    it depends on your Oracle version, time which lasted from the transaction COMMIT and/or current database workload.

    From 9i, you may use flashback query to retrieve data from given time (in your case it would be before committing the wrong transaction).
    From 10g, you may flashback the whole table to that time.
    These techniques are described in many articles on web, e.g. here:
    http://www.oracle-base.com/articles/...hbackQuery.php
    http://www.oracle-base.com/articles/...ashback10g.php

    Note, that data obtained will be exactly the same as before that wrong transaction commit; any other changes made from that time will not be reflected in those techniques. So, if you/anybody else made any other changes after that wrong transaction, you will lose them with flashback table. In flashback query, you may be more successful by selecting primary key with wrong column/rows and recovering only them.

    If this not possible, the other option would be recovering it from backup (again, only data before that wrong transaction). You should ask your DBA for doing that.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •