zoukankan      html  css  js  c++  java
  • day4

    1、事务(Transaction)是一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位。
    2、事务是为了保证数据库的完整性

    3、在oracle中,没有事务开始的语句。一个Transaction起始于一条DML(Insert、Update和Delete )语句,结束于以下的几种情况:
    用户显式执行Commit语句提交操作或Rollback语句回退。
    •当执行DDL(Create、Alter、Drop)语句事务自动提交。
    •用户正常断开连接时,Transaction自动提交。
    •系统崩溃或断电时事务自动回退。

     

    4.1 提交或回滚前数据的状态
    •以前的数据可恢复
    •当前的用户可以看到DML操作的结果
    •其他用户不能看到DML操作的结果
    •被操作的数据被锁住,其他用户不能修改这些数据

    4.2 提交后数据的状态
    •数据的修改被永久写在数据库中.
    •数据以前的状态永久性丢失.
    •所有的用户都能看到操作后的结果.
    •记录锁被释放,其他用户可操作这些记录.

    4.3 回滚后数据的状态
    •语句将放弃所有的数据修改
    •修改的数据被回退.
    •恢复数据以前的状态.
    •行级锁被释放.


    5.1、一旦执行了commit语句,将目前对数据库的操作提交给数据库(实际写入DB),以后就不能用rollback进行撤销。

    5.2、执行一个 DDL ,DCL语句或从 SQL*Plus正常退出,都会自动执行commit命令。(如果DDL操作和我们进行过的DML语句操作的表没有关系,事务也会提交)如:
    insert into emp_temp(empno,ename) values(1111,'cai10');--事务开启
    create table aaa1(id number,name varchar2(20)); --上面的操作提交了

  • 相关阅读:
    [LeetCode] Strobogrammatic Number III
    [LeetCode] Strobogrammatic Number II
    [Codeforces 1253E] Antenna Coverage
    [CodeForces 466C] Number of Ways
    UVa 806 四分树
    Uva 1572 自组合
    UVa Sculpture(离散化 floodfill)
    Uva 4916 Selling Cells(随机算法)
    UvaLive 4863 Balloons(贪心)
    UvaLive 4872 Underground Cables (最小生成树)
  • 原文地址:https://www.cnblogs.com/dxwen/p/10738520.html
Copyright © 2011-2022 走看看