1

我的疑问与SQLserver 2008中快照隔离的行为及其在hibernate中的相应配置有关

我指的是以下链接

Step1:要启用快照隔离,我必须在数据库中运行以下语句:

ALTER DATABASE MyDatabase
SET ALLOW_SNAPSHOT_ISOLATION ON

ALTER DATABASE MyDatabase
SET READ_COMMITTED_SNAPSHOT ON

Step2:我在 hibernate.cfg.xml 中设置了以下属性

<!-- Hibernate Isolation Level [READCOMMITED SNAPSHOT ISOLATION]-->    
<property name=”hibernate.connection.isolation”&gt;4096</property>

我观察到的是,当我从配置文件中省略 Step2 时,快照隔离在我的 java 程序中不起作用。

由于隔离级别是在数据库中设置的,所以它不应该与休眠配置无关吗?

4

2 回答 2

0

因为它设置了 JDBC 事务隔离级别。

于 2012-12-18T09:35:59.763 回答
0

请参阅链接:

(查询必须明确地执行此操作——例如运行命令“SET TRANSACTION ISOLATION LEVEL SNAPSHOT”,或者将其设置在它们的连接字符串中。)

于 2014-07-30T12:30:33.750 回答