SET事务隔离级别
问题描述:
当我想要添加的行SET事务隔离级别
SET事务隔离级别未提交读
开始我的功能定义脚本的条款之后在SQL Server 2008中, 它说:
Invalid use of a side-effecting operator 'SET TRANSACTION ISOLATION LEVEL' within a function
如何在功能定义内实现此功能?
答
你不能。
您需要在调用该函数的批处理的开始处进行设置。
答
您是否尝试过这样做以避免无法设置事务隔离?
Select * from dbo.MyTable with (nolock)
从http://msdn.microsoft.com/en-us/library/ms173763.aspx“有一个例外,你可以从一个隔离级别在任何时候交易过程中切换到另一个。发生异常当从任何隔离级别更改为SNAPSHOT隔离时,这会导致事务失败并回滚,但是,可以将在SNAPSHOT隔离中启动的事务更改为任何其他隔离级别。 - 你是对的 - 我错过了。如果OP将其标记为已接受,我会删除该答案 – 2012-04-09 19:48:01
我已经收回了我的DV,因为您现在已经接受了它。也许只是编辑它,所以它是正确的。 – 2012-04-09 19:49:52