看书上的例子 为什么简单的一个select查询都要加上事务控制 是不是没有必要?
Session s = factory.openSession();
Transaction tx = s.beginTransaction();
List auctions = s.createQuery("select ...").list();
tx.commit();
s.close();
=========================================================
下面援引robbin的解释大家大概就明白了
如果你一次执行单条查询语句,则没有必要启用事务支持,数据库默认支持SQL执行期间的读一致性;
如果你一次执行多条查询语句,例如统计查询,报表查询,在这种场景下,多条查询SQL必须保证整体的读一致性,否则,在前条SQL查询之后,后条SQL查询之前,数据被其他用户改变,则该次整体的统计查询将会出现读数据不一致的状态,此时,应该启用事务支持。
关于:为什么简单的一个select查询都要加上事务控制
最新推荐文章于 2023-12-27 19:00:16 发布