SQL语言分为五大类:

DDL(数据定义语言:DataDefinitionLanguage) - Create、Alter、Drop 这些语句自动提交,无需用Commit提交。

DQL(数据查询语言:DataQueryLanguage) - Select 查询语句不存在是否提交问题。

DML(数据操纵语言:DataManipulationLanguage) - Insert、Update、Delete 这些语句需要Commit才能提交。

DTL(事务控制语言:TransactionControlLanguage) - Commit、Rollback 事务提交与回滚语句。

DCL(数据控制语言:DataControlLanguage) - Grant、Revoke 授予权限与回收权限语句。


1.commit

在数据库的插入(insert)、删除(delete)和修改(update)操作时,只有当事务在提交到数据库时才算完成。在Oracle 数据库中,在事务提交前,只有操作数据库的当前session能有权看到所做的事情,别的session在另外一个session最后提交完成时才能看见所修改的内容。commit就是确定提交的意思,比如你用update更新表中一条记录,而不commit,那么别的账户在查询这个表时就查询不到你update的记录,自己是可以查询到的;而commit后则其他账户就能查询到你update的记录了。

2.rollback
rollback:就是回退的意思,比如你用update更新表中一条记录,这时你查询这个表时,则发现表已经更新(注意别的用户查询这个表会发现表未更新);再rollback后,你再查询表时,发现表还是更新之前的样子。

在没有进行commit之前,是对内存的操作,可以rollback;如果commit,则修改了物理地址的数据,则不能rollback了。
3.作用的范围与注意点

两者只对insert、update、delete(DML数据操纵语句)操作有效。

注意点:
3.1、先commit再rollback,则rollback相当于不起作用。
3.2、若现delete再select再rollback,,则rollback会撤回delete操作。
3.3、其他用户查询你的表时看到的是commit之后的表,而你看到的是最新操作的表。

Oracle中的commit与rollback相关推荐

  1. 【基础】ORACLE中on commit preserve rows和 on commit delete rows的区别

    首先on commit preserve rows 和 on commit delete rows 都是在oracle 创建临时表时用到的, delete rows用于事务相关,也就在事务结束后tru ...

  2. oracle的ora01504,Oracle中的ORA-01548: active rollback segment '_SYSSMU1$' found

    接上文<Oracle Undo tablespace恢复(无备份)> 1.在创建新的undo tablesapce "undotbs2"后,删除旧的undo table ...

  3. oracle添加语句 commit,Oracle COMMIT语句

    在Oracle中,COMMIT语句可以用来提交当前事务的所有更改.提交后,其他用户将能够看到您的更改.本文要为大家带来的就是COMMIT语句的用法. COMMIT语句语法: Oracle / PLSQ ...

  4. oracle 开始一个事务,oracle的启动与关闭原理-事务commit或者rollback

    oracle的启动与关闭原理-事务commit或者rollback 4.事务 4.1事务的概念 从第一个DML语句开始执行,以rollback或者commit为结束标记,之前所有的DML操作(inse ...

  5. oracle中rollback用法,Oracle中SAVEPOINT和ROLLBACK用法

    savepoint是事务内部允许部分rollback的标志符.因为事务中对记录做了修改,我们可以在事务中创建savepoint来标识不同的点.如果遇到错误,就可以rollback到不同的点或直接回来事 ...

  6. oracle删除的数据没有commit,在Oracle中误删除数据后并commit后的数据恢复办法

    在Oracle中误删除数据后并commit后的数据恢复办法 背景:表A数据误操作,被delete了,恢复. --1.先备份A表当前数据. --2.查询某 在Oracle中误删除数据后并commit后的 ...

  7. PLSQL中 commit 和 rollback 的区别

    一. commit(提交) 作用:commit即提交,表示这个事务的所有操作都执行成功,commit告诉系统,数据库要进入一个新的正确状态,该事务对数据库的所有更新都要确保不因数据库的宕机而丢失. 提 ...

  8. P52 DCL中commit与rollback的使用

    4.DCL 中COMMIT 和ROLLBACK #7.DCL 中COMMIT 和ROLLBACK #commit:提交数据.一旦执行commit,则数据就被永久的保存在了数据库中, #意味着数据不可以 ...

  9. oracle中创建触发器

    从csdn上面看到一个如何创建触发器的问题,感觉自己很有必要保存学习,特写下来: 条件: 现有A.B两张表 A: 工号 姓名 密码 性别 年龄 ... B: 工号 姓名 密码 当对A表中的" ...

最新文章

  1. python装饰器-如何更通俗地讲解Python的装饰器?
  2. 【数据结构与算法】之深入解析“比特位计数”的求解思路与算法示例
  3. cvs有机添加剂检测_美国ECI CVS 电镀添加剂分析仪QL-10EX
  4. python time模块和random 模块
  5. 《linux核心应用命令速查》连载十一:pstree:显示进程状态树
  6. 外螺纹对照表_螺纹螺距对照表
  7. matlab 矩阵白化,主成分分析中如何对矩阵进行白化处理
  8. solidworks绘制齿轮、机械爪(齿轮设计基础知识)
  9. 2022-2027年中国机动车检测行业发展前景及投资战略咨询报告
  10. C++计算三角形周长和面积
  11. 2018湖南省第14届大学生计算机程序设计竞赛---卖萌表情
  12. 在线五子棋对战 --- 人机对战的实现
  13. C语言实现将彩色BMP位图转化为二值图
  14. OCT-模拟集成电路设计的九个境界
  15. Linux下lsof命令详解
  16. P1873 砍树 【二分】
  17. 电信运营商的流量经营策略与方法培训大纲
  18. python cv2画点_opencv-python鼠标画点:cv2.drawMarker()
  19. 反arp攻击软件_技术干货透析中间人攻击
  20. Visual Studio调试器指南---自动启动调试器

热门文章

  1. 25岁以后还适合花钱学编程,当程序员吗?
  2. D - Circular Addition
  3. 零知识证明(zero knowledge validation)
  4. 基于小波变换的脉搏信号滤波matlab仿真
  5. Excel的规划求解实例
  6. python3--日期时间处理最近n个自然周计算
  7. idea 配置 git 教程
  8. 小白都能看懂!Python机器学习预测乳腺癌疾病案例剖析!
  9. 【VisionMaster】试用版安装说明
  10. 常用端口与udp协议