--First query the data T_asn_dtl at a certain point in time as the table name
SELECT * from T_asn_dtl as of TIMESTAMP to_timestamp (' 20180625 22:30:00 ', ' YYYYMMDD HH24:MI:SS ');
--Assigning this time-point data to a new table, Tab_bal; it's better to create a new two-sheet table, which is a backup create TABLE Tab_bak as SELECT * from T_ASN_DTL as of TIMESTAMP To_timestamp ( ' 20180625 22:30:00 ', ' YYYYMMDD HH24:MI:SS ');
--Query the table to see if the data has come in,
SELECT * from Tab_bak; SELECT * from T_ASN_DTL;
--Change the table name of the data confusion, and then change the new table name to the name of the table used, so the data is back.
ALTER TABLE T_ASN_DTL Rename to Tabaalter table Tab_bak Rename to T_asn_dtl
Because you forgot to carry the condition when updating, it caused the data confusion.
Use this method to restore data to 1 hours ago (22.30.00)
If you are an enterprise version of Oracle, you can use flashback directly
The standard version of Oracle does not support this flash-back!!!
Oracle database restore point in time within 24 hours