我有一张表,我从中删除了一行
delete from patient where pid=500;
现在,我回滚上面的查询并成功完成但是在查询时
select *from patient;
我明白了:
"未选择任何行"
那么,回滚会取消会话中的所有操作吗?
但表格结构存在,根据我的小知识,我认为删除 只是删除可以通过回滚检索的记录,还是因为我没有提交我的插入?
答案 0 :(得分:0)
如果它仍然不起作用,并且如果启用了表的闪回,则要恢复数据:
ALTER TABLE xxTABLENAMExx
ENABLE ROW MOVEMENT;
FLASHBACK TABLE xxTABLENAMExx
TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '20' minute);
ALTER TABLE xxTABLENAMExx
DISABLE ROW MOVEMENT;
输入您希望表格回滚到的分钟数。
答案 1 :(得分:0)
这将是会话autocommit on
的结果,如果您使用任何类型的java工具或使用默认设置autocommit on
运行的任何其他工具,您将失去回滚功能(闪回仍然是选项),要具备将会话设置为autocommit off