本文来自于自己的博客:http://www.wangerbao.com/?p=279


 Mysql默认事物是重复读(Repeatable Read Isolation Level),
 PostGres默认事物是提交读(Read Committed Isolation Level),现在根据实例来对比下它们的差别.

Mysql:

左边为事物1,右边为事物2.

第一步:

    事物1查询,事物2查询,它们的查询结果一致。
 
数据库事务处理差异:可提交读和重复读区别_重复读

第二步:

          事物1更新-查询-但是不提交,事物2查询,他们的结果不一致

 数据库事务处理差异:可提交读和重复读区别_提交读_02
            

第三步:

       事物1提交-查询,事物2查询,他们的结果不一致———其实2个事物的差别就在这里。

 
数据库事务处理差异:可提交读和重复读区别_提交读_03

第四步:

事物1查询,事物2提交-查询,他们的结果一致
数据库事务处理差异:可提交读和重复读区别_数据库_04
   

Postgresql:

左边为事物1,右边为事物2

第一步:

事物1查询,事物2查询,查询结果一致。

 数据库事务处理差异:可提交读和重复读区别_提交读_05

第二步:

事物1修改-查询,事物2查询,查询结果不一致

 数据库事务处理差异:可提交读和重复读区别_提交读_06

第三步:

事物1提交-查询,事物2查询,查询结果一致

 
数据库事务处理差异:可提交读和重复读区别_提交读_07
第四步:

事物1查询,事物2提交查询,结果一致,不截图了