事务的概述

在数据库中,所谓事务是指一组逻辑操作单元即一组sql语句。当这个单元中的一部分操作失败,整个事务回滚,只有全部正确才完成提交。

事务的ACID属性

1、原子性(Atomicity)

原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。

2、一致性(Consistency)

事务必须使数据库从一个一致性状态变换到另一个一致性状态。(数据不被破坏)

3、隔离性(Isolation)

事务隔离性是指一个事务的执行不能被其他事务干扰。

4、持久性(Durability)

持久性是指一个事务一旦被提交,它对数据库中的数据的改变就是永久性的。

在JDBC中,事务默认是自动提交的,每次执行一个SQL语句是,如果执行成功的话,就会向数据库自动提交而不能回滚。

为了让多个SQL语句作为一个事务执行:

a、执行语句前调用Connection对象的setAutoCommit(false);以取消自动提交事务。

b、在所有的sql语句都成功执行后,调用commit();方法提交事务。

c、在出现异常是,调用rollback();方法回滚事务。

你可能感兴趣的:(mysql)