如何在mssql中强制程序中的最小隔离级别?
我可以在我的过程中使用"SET事务隔离级别可重复读取“来设置事务级别。但是,如果调用方/执行器使用的是,则此命令将降低隔离级别。“设置事务隔离级别SERIALIZABLE;”我如何在不降低较高隔离级别的情况下强制最低隔离级别?
如果我在我的过程中提交了“嵌套”事务,会发生什么?嵌套事务获得的锁会一直保持到提交(调用方的)外部事务为止吗?
发布于 2019-09-25 14:18:56
在服务器中确定事务隔离级别有几个选项,这取决于您是否希望将读取提交的快照作为独立于read提交的快照。一旦您知道您的会话所使用的隔离级别,您就可以实现任何您想要的逻辑。有点像
IF EXISTS( SELECT 1
FROM sys.dm_exec_sessions
WHERE session_id = @@SPID
AND transaction_isolation_level < 3 )
BEGIN
set transaction isolation level repeatable read;
END;https://dba.stackexchange.com/questions/249579
复制相似问题