标签:事物
1.什么是事物5.不考虑事务的隔离性会引发的问题有3个
第一个问题:脏读:一个事务读取到了另一个事务未提交的数据!
第二个问题:不可重复读:一个事务读取到了另一个事务提交的数据,导致了多次查询的结果不一致。强调的是update,修改记录的数据。
第三个问题:虚读(幻读):一个事务读取到了另一个事务提交的数据,导致了多次查询的结果不一致。强调是insert,向表中添加一条数据
6.为了解决隔离性引发的问题,解决办法是设置数据库的隔离级别
7.数据库的隔离级别有四种
Read uncommitted -- 什么都解决不了
Read committed -- 避免脏读,但是不可重复读和虚读有可能产生
Repeatable read -- 避免脏读和不可重复读,虚度有可能产生的
Serializable -- 避免各种读
8.4种隔离级别有安全性和效率
安全 Serializable > Repeatable read > Read committed > Read uncommitted
效率 Serializable < Repeatable read < Read committed < Read uncommitted
9.如何设置数据库的隔离级别
MySQL的数据库,默认的隔离级别是Repeatable read,避免脏读和不可重复读
set session transaction isolation level 事物的隔离级别;
标签:事物
原文地址:http://blog.51cto.com/13579086/2074197