execute执行后 可以回滚

commit提交后 闪回恢复原来的数据

其实Oracle提交数据是分两步操作的,第一步execute执行,第二步commit提交。对应的PL\SQL也是要先点execute执行,执行后再点commit提交。
但是 commit提交后 可以用闪回查询恢复原来的数据 因为oracle会将近期的数据保存到快照中 如:

SELECT * FROM tab AS OF TIMESTAMP TO_TIMESTAMP('20130506 20:00:00','YYYYMMDD HH24:MI:SS');
这里'20130506 20:00:00'就是你想恢复数据到哪个时间状态 tab是数据库的表名 这样查询到的数据就是执行更新操作之前的数据

create table tab_bak as SELECT * FROM tab AS OF TIMESTAMP TO_TIMESTAMP('20130506 20:00:00','YYYYMMDD HH24:MI:SS');
这样就把这个时间段的数据放到了 tab_bak表中了。

再把表重命名 即可:alter table tab_bak rename to tab;

查询表的所属用户

select owner from dba_tables where table_name=upper('表名');

创建一个和另一个表结构相同的空表

create table  newtable as select * from oldtable where 1=0;

如果不加where条件,创建的新表和旧表字段和数据都一样啦,相当于复制过来了。

ORACLE提交事务回滚的更多相关文章

  1. mybatis插值,数据提交事务回滚数据库值为空

    mybatis插值,数据提交事务回滚数据库值为空 通过sql日志查看sql为:INSERT INTO `quanxian`.`user` ( phone, email, password, times ...

  2. oracle undo回滚段详解

    1.Undo是干嘛用的?   在介绍undo之前先说一下另外一个东西 transaction ,翻译成交易或事务.我们在进行一个事务的过程中需要申请许多资源,一个复杂的事务也需要很多步来完成.那么一个 ...

  3. [Oracle]关于回滚段的一些转贴摘录

    ORACLE 回滚段 回滚段概述 回滚段用于存放数据修改之前的值(包括数据修改之前的位置和值).回滚段的头部包含正在使用的该回滚段事务的信息.一个事务只能使用一个回滚段来存放它的回滚信息,而一个回滚段 ...

  4. 简单了解Oracle的回滚段

    因为上一次研究了Oracle的事务一致性,中间查阅资料的时候,看到这个地方与回滚段有关.所以就罗列了以下简单的知识.更为深层次的就不再深挖了,个人感觉对于事务的一致性和隔离级别是开发经理应该了解的,但 ...

  5. oracle数据库回滚

    线下测试数据误操作,回滚攻略--把数据捞出来,这个时间自己设置--表名一定要是:xx_tbd日期 CREATE TABLE user_tbd0718ASselect * from user as of ...

  6. oracle之回滚数据表 笔记

    alter table [tableName] enable row movement;flashback table [tableName] to timestamp to_timestamp('2 ...

  7. Oracle 数据库 回滚

    1.打开Flash存储的权限ALTER TABLE authorization ENABLE row movement ;2.把表还原到指定时间点flashback table authorizati ...

  8. oracle回滚机制深入研究

    这篇文章主要描写叙述oracle的回滚机制,篇幅可能较长,由于对于oracle的回滚机制来说,要讨论和描写叙述的实在太多,仅仅能刷选自己觉得最有意义的一部分进行深入研究和分享 一.我们来看一个DML语 ...

  9. SpringBoot整合MongoDB,在多数据源下实现事务回滚。

    项目中用到了MongoDB,准备用来存储业务数据,前提是要实现事务,保证数据一致性,MongoDB从4.0开始支持事务,提供了面向复制集的多文档事务特性.能满足在多个操作,文档,集合,数据库之间的事务 ...

随机推荐

  1. 搞搞电脑微信表情的破解(.dat转png or jpg)

    首先感谢:https://blog.csdn.net/weixin_42440768/ 因为狗子喜欢之前那个头像,但是没找到,于是我想看看我们之前的斗图过程中有没有发她的头像. 这是做这件事情的起因. ...

  2. PCIE training

    在PCIe链路可以正常工作之前,需要对PCIe链路进行链路训练,在这个过程中,就会用LTSSM状态机.LTSSM全称是Link Training and Status State Machine.这个 ...

  3. 《JAVA程序设计》第五周总结

    第五周学习总结 本周目录: 第六章知识梳理 本周学习时遇到的问题和解决过程 上周错题与解析 码云链接 感想 第六章知识梳理: 接口:使用关键字interface定义,分为接口声明和接口体. inter ...

  4. VNF网络性能提升解决方案及实践

    VNF网络性能提升解决方案及实践 2016年7月 作者:    王智民 贡献者:     创建时间:    2016-7-20 稳定程度:    初稿 修改历史 版本 日期 修订人 说明 1.0 20 ...

  5. Learning to Promote Saliency Detectors

    Learning to Promote Saliency Detectors 原本放在了思否上, 但是公式支持不好, csdn广告太多, 在博客园/掘金上发一下 https://github.com/ ...

  6. python第十八天 多态 和 私有

    python的多态比较特别 多态, 字面意思,多种状态. 扩展下 -> 执行同样的操作,结果却不同. 对使用的操作者来说, 就是执行同一个方法, 得到了不同的结果. 在操作者看来,像是   具备 ...

  7. appnium启动报错Encountered internal error running command: Error: Error occured while starting App. Original error: Permission to start activity denied.

    说明写错了activity 首先查看一下activity,使用命令 打开被测app,输入命令adb shell dumpsys window | findstr mCurrentFocus 看似这个a ...

  8. 笔记javascript

    // var demo1=12;// alert('点击确定按钮看结果'+demo1);// for(var i = 0; i<10;i++)// {//     document.write( ...

  9. Anaconda的安装及使用

    总结的很清楚,做个记录. http://python.jobbole.com/86236/

  10. angularJs $templateCache

    模板加载后,AngularJS会将它默认缓存到 $templateCache 服务中.在实际生产中,可以提前将模板缓存到一个定义模板的JavaScript文件中,这样就不需要通过XHR来加载模板了 $ ...