大家好,本人新进公司,在测试时,误删数据,忘记备份,现在正在痛苦ing,求助
描述:有A、B两张表A表中有a1,a2两个属性,B表中有b1,b2两个属性
其中a1,与b1中的值一样,但是现在我删错数据了,B表中的b1属性被删除了,我该怎么添加进去
不好告诉我先查询A表然后一行一行向B表中添加,因为B表中数据非常大,我想问问有没有好的oracle语句,先谢了
描述:有A、B两张表A表中有a1,a2两个属性,B表中有b1,b2两个属性
其中a1,与b1中的值一样,但是现在我删错数据了,B表中的b1属性被删除了,我该怎么添加进去
不好告诉我先查询A表然后一行一行向B表中添加,因为B表中数据非常大,我想问问有没有好的oracle语句,先谢了
SQL> flashback table jym_flash_test to timestamp to_timestamp('03/09/2011 09:46:00','mm/dd/yyyy hh24
:mi:ss');
flashback table jym_flash_test to timestamp to_timestamp('03/09/2011 09:46:00','mm/dd/yyyy hh24:mi:s
*
第 1 行出现错误:
ORA-08189: 因为未启用行移动功能, 不能闪回表
已用时间: 00: 00: 00.03
SQL> alter table jym_flash_test enable row movement;表已更改。已用时间: 00: 00: 00.09
SQL> flashback table jym_flash_test to timestamp to_timestamp('03/09/2011 09:46:00','mm/dd/yyyy hh24
:mi:ss');闪回完成。已用时间: 00: 00: 00.93
SQL> select * from jym_flash_test; ID
----------
1如果表删除了的话 flashback table a to before drop;
用闪回功能吧
也有了回收站的概念,drop 的表,只要不purge的表都会在回收站中找到的。
select * from user_recyclebin;
select * from table as of timestamp sysdate-9/24
时间不要太久
其中a1,与b1中的值一样,但是现在我删错数据了,B表中的b1属性被删除了,2表有关联?没有关联你怎么知道你的哪行A1数据 更新 到B1的哪一行?
就算是AB两表中a1,b1字段一模一样,现在也不能恢复了