Oracle中挽救被update并且commit了的数据


我在2011年9月2号18:50分不小心把kc(学生课程表)中字段课程update成数学了
alter table kc enable row movement;

flashback table kc to timestamp to_timestamp('2011-09-02 14:00:00','yyyy-mm-dd hh24:mi:ss');

SQL> select * from kc;
 
KCH KCM              KKXQ  XS XF
--- ---------------- ---- --- --
101 计算机基础课        1  80  5
102 程序设计语言        2  68  4
206 离散数学            4  68  4
208 数据结构            5  68  4
209 操作系统            6  68  4
210 计算机原理          7  85  5
212 数据库原理          7  68  4
301 计算机网络          7  51  3
302 软件工程            7  51  3

SQL> update kc set kc.kcm='数学';
 
9 rows updated
 
SQL> commit;
 
Commit complete
 
SQL> select * from kc;
 
KCH KCM              KKXQ  XS XF
--- ---------------- ---- --- --
101 数学                1  80  5
102 数学                2  68  4
206 数学                4  68  4
208 数学                5  68  4
209 数学                6  68  4
210 数学                7  85  5
212 数学                7  68  4
301 数学                7  51  3
302 数学                7  51  3
 

SQL> alter table kc enable row movement;
 
Table altered
SQL> flashback table kc to timestamp to_timestamp('2011-09-02 14:00:00','yyyy-mm-dd hh24:mi:ss');
 
Done

SQL> select * from kc;
 
KCH KCM              KKXQ  XS XF
--- ---------------- ---- --- --
101 计算机基础课        1  80  5
102 程序设计语言        2  68  4
206 离散数学            4  68  4
208 数据结构            5  68  4
209 操作系统            6  68  4
210 计算机原理          7  85  5
212 数据库原理          7  68  4
301 计算机网络          7  51  3
302 软件工程            7  51  3
 
9 rows selected

相关内容