PostgreSQL两种事务隔离级

PostgreSQL两种事务隔离级别:

读已提交:PostgreSQL中缺省隔离级别。当一个事务运行在这个隔离级别时,一个SELECT查询只能看到查询开始之前提交的数据而永远无法看到未提交的数据或者在查询执行时其它并行的事务提交所做的改变。如果两个事务在对同一元组进行更新,第二个更新事务将等待第一个更新事务提交或者回滚。如果第一个更新回滚,那么它的作用将被忽略,而第二个更新者将继续更新最初发现的元组。如果第一个更新者提交,系统就按那个重新计算查询搜索条件(where子句),如果元组符合条件,则第二个更新继续其操作,从该元组的已更新版本开始。

可串行化:它提供最严格的事务隔离。这个级别模拟串行的事务执行,就好像事务一个接着一个地串行(而不是并行地)执行。如果两个事务在对同一个元组进行更新,可串行化的事务将等待第一个正在更新的事务提交或者回滚。如果第一个更新者回滚,那么它的影响将被忽略,这个可串行化的事务就可以在该元组上完成其更新操作。但是如果第一个更新者提交了,那么可串行化事务将回滚,从头开始重新进行整个事务。

原文地址:https://www.cnblogs.com/songyuejie/p/4728330.html