`
gao_20022002
  • 浏览: 164809 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

关于数据库的commit以及rollback

阅读更多

转载:用于学习

 


从功能上划分,SQL
语言可以分为DDL,DML和DCL三大类。
 1. DDL(Data Definition Language) 
    数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言 ;
    CREATE---创建表
    ALTER---修改表
    DROP---删除表
 2. DML(Data Manipulation Language) 
    数据操纵语言,SQL中处理数据等操作统称为数据操纵语言 ; 
    INSERT---数据的插入
    DELETE---数据的删除
    UPDATE---数据的修改
    SELECT---数据的查询
 3. DCL(Data Control Language) 
    数据控制语言,用来授予或回收访问数据库的某种特权,并控制 数据库操纵事务发生的时间及效果,对数据库实行监视等;
   
GRANT--- 授权。
    ROLLBACK---回滚。
     
COMMIT--- 提交。

  4. 提交数据有三种类型:显式提交、隐式提交及自动提交。

     下面分 别说明这三种类型。

         (1) 显式提交

         COMMIT 命令直接完成的提交为显式提交。
         (2) 隐式提交

         SQL 命令间接完成的提交为隐式提交。这些命令是:

         ALTER AUDIT COMMENT CONNECT CREATE DISCONNECT DROP EXIT GRANT NOAUDIT QUIT REVOKE RENAME

         (3) 自动提交

        若把 AUTOCOMMIT 设置为 ON ,则在插入、修改、删除语句执行后,

系统将自动进行提交,这就是自动提交。其格式为:   SQL>SET AUTOCOMMIT ON  

      COMMIT / ROLLBACK这两个命令用的时候要小心。 COMMIT / ROLLBACK 都是用在执行 DML语句(INSERT / DELETE / UPDATE / SELECT )之后的。DML 语句,执行完之后,处理的数据,都会放在回滚段中(除了 SELECT 语句),等待用户进行提交(COMMIT)或者回滚 (ROLLBACK),当用户执行 COMMIT / ROLLBACK后,放在回滚段中的数据就会被删除。

    (SELECT 语句执行后,数据都存在共享池。提供给其他人查询相同的数据时,直接在共享池中提取,不用再去数据库中提取,提高了数据查询的速度。)

      所有的 DML 语句都是要显式提交的,也就是说要在执行完DML语句之后,执行 COMMIT 。而其他的诸如 DDL 语句的,都是隐式提交的。也就是说,在运行那些非 DML 语句后,数据库已经进行了隐式提交,例如 CREATE TABLE,在运行脚本后,表已经建好了,并不在需要你再进行显式提交。

分享到:
评论

相关推荐

    事务管理的艺术:用BEGIN、COMMIT和ROLLBACK掌控数据库变更

    SQL(Structured Query Language,结构化查询语言)是一种用于管理和操作关系型数据库的标准编程语言。它被广泛用于访问和修改数据库中的数据...8. **事务控制(Transaction Control)**:使用`BEGIN`、`COMMIT`和`ROLL

    SQL事务用法begin tran,commit tran和rollback tran的用法

    `BEGIN TRAN`、`COMMIT TRAN` 和 `ROLLBACK TRAN` 的正确使用能够保证在数据库中实现原子性和回滚能力,从而保护数据的完整性。在开发过程中,应始终考虑事务管理,尤其是在执行可能导致数据库状态改变的多个操作时...

    数据库文献

    SQL-Sever数据库根据运行模式将事务分为4种类型:自动提交事务、显示事务、隐式事务和批处理级事务。1. 自动提交事务:是指每条单独的语句都是一个事务;2. 显式事务:是指每个事务均以BEGIN TRANSACTION语句显式...

    关于数据库的资料,看看吧!对各位有好处!

    事务处理是数据库管理的重要组成部分,确保数据的一致性和完整性,通过`BEGIN TRANSACTION`、`COMMIT`和`ROLLBACK`语句来控制事务的生命周期。 安全管理是保护数据库免受非法访问和破坏的关键环节,包括用户权限的...

    数据库关键字保留字大全

    * 事务控制语言(TCL):COMMIT、ROLLBACK等 DB2保留字列表包括: * ADD * DETERMINISTIC * LEAVE * RESTART * AFTER * DISALLOW * LEFT * RESTRICT *_ALIAS * DISCONNECT * LIKE * RESULT Oracle保留字 Oracle...

    SQL数据库PPT以及实例

    BEGIN、COMMIT和ROLLBACK语句用于管理事务,保证数据的ACID属性(原子性、一致性、隔离性和持久性)。 9. **数据库备份与恢复**:数据库管理员需要了解如何备份数据库以防止数据丢失,并在必要时恢复数据。SQL提供...

    关于数据库的学习笔记,mysql数据库教程.zip

    MySQL支持ACID(原子性、一致性、隔离性和持久性)属性,提供了BEGIN, COMMIT, ROLLBACK等语句来管理事务。 视图是数据库的虚拟表,基于一个或多个基础表,可以简化复杂的查询并提供安全的访问层。触发器则允许在...

    实验9 数据库安全性与并发控制.doc

    实验9的主要目标是理解身份验证模式、登录账号、服务器角色、数据库角色和数据库用户之间的关系、事务的 ACID 特性、commit 和 rollback 的含义、并发控制与锁。 一、身份验证模式 数据库服务器支持两种身份验证...

    数据库的事务处理方法

    例如,Oracle数据库中,事务从COMMIT、ROLLBACK、连接到数据库或执行第一条SQL语句开始,到COMMIT、ROLLBACK或断开连接结束。DDL语句会隐式地开始或结束事务。如果需要取消事务,可以使用ROLLBACK命令,甚至可以通过...

    MySQL数据库应用形考实验1-4全答案.zip

    在这个"MySQL数据库应用形考实验1-4全答案.zip"压缩包中,包含了四个关于MySQL基础操作的实验训练,涵盖了从数据库和表的创建,到数据的查询、增删改,以及数据库系统的维护等关键知识点。以下是对这些实验的详细...

    原创易语言连接数据库,实现增、删、改、查数据库,一键导入数据库源码

    例如,对于多个操作的原子性,可以使用BEGIN、COMMIT和ROLLBACK事务语句;在处理错误时,应有适当的异常捕获和处理机制;而为了提高性能,可能需要对查询进行优化,如避免全表扫描,合理使用索引等。 在"数据库连接...

    数据库中事物与锁的课件

    2. 显式事务:通过BEGIN TRANSACTION、COMMIT和ROLLBACK语句显式地开始、结束和管理事务。这种方式允许更精细的控制。 3. 隐式事务:当一个事务完成时,下一个事务会自动开始,但仍需使用COMMIT或ROLLBACK来结束。 ...

    哈工大数据库系统概论系统篇.pptx

    SQL中提供了BEGIN TRANSACTION、COMMIT和ROLLBACK等语句来管理事务,如SQL-92标准及SQL Server 2000的具体语法。COMMIT表示事务的正常结束,将所有更新写入数据库;而ROLLBACK则用于回滚事务,撤销所有已完成的更新...

    数据库上机指导 包含数据库源文件

    我们将了解ACID属性(原子性、一致性、隔离性、持久性),以及如何使用BEGIN、COMMIT和ROLLBACK来管理事务。此外,还会涉及并发控制,如锁机制和乐观锁策略,确保多用户环境下数据的一致性。 七、备份与恢复 数据库...

    sql数据库外文翻译.doc

    可以使用DISCONNECT语句直接关闭数据库,或者在程序的最后使用带有RELEASE选项的COMMIT或ROLLBACK来关闭数据库。COMMIT用于保存事务中的更改,而ROLLBACK则用于撤销未提交的更改。 5. **DECLARE DATABASE**:在...

    大型数据库 oracle11g数据库

    7. **并发控制与事务管理**: 了解Oracle的锁定机制,事务的概念,以及ACID(原子性、一致性、隔离性、持久性)属性,掌握COMMIT、ROLLBACK和SAVEPOINT的用法。 8. **数据库安全性**: 学习如何创建用户、权限分配、...

    数据库课设--管理系统(含数据库)

    3. **事务处理**:理解事务的概念,掌握COMMIT、ROLLBACK和SAVEPOINT命令,确保数据操作的原子性和一致性。 4. **索引优化**:了解如何通过创建索引来提高查询效率,同时理解索引对写操作的影响。 5. **错误处理和...

    数据库实验

    实验可能包含对ACID属性(原子性、一致性、隔离性和持久性)的理解和应用,以及如何使用BEGIN、COMMIT、ROLLBACK等语句来管理事务。 数据备份与恢复是数据库管理的重要环节。实验可能涉及数据库的全量备份、增量...

    中科大软件学院金老师数据库实验2.rar

    学生需要理解ACID(原子性、一致性、隔离性和持久性)四大特性,并能编写事务代码,如使用BEGIN、COMMIT、ROLLBACK等语句来确保数据的一致性和完整性。同时,还需要了解不同隔离级别的概念,比如读未提交(Read ...

    SQL数据库外文翻译.doc

    关闭数据库可以使用DISCONNECT语句,或者在程序的最后一个COMMIT或ROLLBACK语句后添加RELEASE选项。这样既能释放资源,又能确保事务的完整性和一致性。 5. **DECLARE DATABASE**:在数据库能在程序中被打开和使用...

Global site tag (gtag.js) - Google Analytics