MySQL数据库为我们提供的四种隔离级别:
  ① Serializable (串行化):可避免脏读、不可重复读、幻读的发生。
  ② Repeatable read (可重复读):可避免脏读、不可重复读的发生。
  ③ Read committed (读已提交):可避免脏读的发生。
  ④ Read uncommitted (读未提交):低级别,任何情况都无法保证。
  Mysql 的默认事务级别是: Repeatable read
  Oracle的默认事务级别是:Read committed
  查看数据库的事务级别命令是:select @@tx_isolation;
  “脏读”比较好区别,现在看看“不可重复”和“幻读”的区别:
  不可重复读的重点是修改:
  同样的条件,你读取过的数据,再次读取出来发现值不一样了
  幻读的重点在于新增或者删除
  同样的条件,第1次和第2次读出来的记录数不一样
  当然,从总的结果来看,似乎两者都表现为两次读取的结果不一致.
  但如果你从控制的角度来看,两者的区别比较大
  对于前者,只需要锁住满足条件的记录
  对于后者,要锁住满足条件及其相近的记录