java_第一年_JDBC(5)
事务概念:事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功; 开始事务:start transaction 提交事务:commit 回滚事务:rollback 事务的四大特性 原子性:是指事务是一个不可分割的工作单位,事务中的操作要么全部成功,要么全部失败 一致性:事务必须使数据库从一个一致性状态变换到另外一个一致性状态 隔离性:多个用户并发访问数据库时,数据库为每一个用户开启的事务,不能被其他事务的操作数据所干扰,多个并发事务之间要相互隔离 持久性:一个事务一旦被提交,它对数据库中数据的改变就是永久性的,接下来即使数据库发生故障也不应该对其有任何影响 隔离性可能会引起的问题 脏读:脏读指一个事务读取了另外一个事务未提交的数据 不可重复读:不可重复读指在一个事务内读取表中的某一行数据,多次读取结果不同;所操作的数据被别的事务操作,通过给操作数据加行锁即可; 虚读(幻读):是指在一个事务内读取到了别的事务插入的数据,导致前后读取不一致;操作的数据被别的事务所插入,仅通过行锁并不能解决; 四种隔离级别 针对上述所说的隔离性问题,mysql数据库共定义了4种隔离级别 查询隔离级别:select @@tx_isolation; 设置隔离级别:set transaction isolation level 隔离级别名; Read uncommitted(读未提交)