首页 > 代码库 > MySQL数据库事务的理解与操作

MySQL数据库事务的理解与操作

     事务是作为单个逻辑工作单元执行的一系列操作,这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行。事务是一个不可分割的工作逻辑单元。

事务具备四个属性,简称ACID属性:

  1. 原子性(Atomicity):事务是一个完整的操作。事务的各步操作是不可分的(原子的);要么都执行、要么都不执行。
  2. 一致性(Consistency):当事务完成时,数据必须处于一致状态。
  3. 隔离性(Isolation):对数据进行修改的所有并发事务是彼此隔离的,这表明事务必须是独立的,它不应以任何方式依赖于或影响其他事务。
  4. 永久性(Durablity):事务完成后,它对数据库的修改被永久保持,事务日志能够保持事务的永久性。

默认情况下,MySQL将以自动提交模式运行,也就是说每一条SQL命令都将当做一个小的事务来运行。

  1. 关闭自动提交模式:mysql>set autocommit=0;
  2. 设置事物还原点:mysql>savepoint p1;
  3. 事物回滚到某还原点:mysql>rollback to p1;
  4. 事物完全回滚:mysql>rollback;
  5. 事物提交:mysql>commit;

 

 

 

 

MySQL数据库事务的理解与操作