C# 工作……几乎和甲骨文一样好。您可能无法进一步推动SQL Server,除非您希望始终管理错误/回滚。您的第二点可能代表一个单独的问题……但是,如果流程完全包含在一个事务中——这是最佳解决方案(那么第二个请求将等待或失败),我想指出,我的问题的目的是找到一种

C# 工作……几乎和甲骨文一样好。您可能无法进一步推动SQL Server,除非您希望始终管理错误/回滚。您的第二点可能代表一个单独的问题……但是,如果流程完全包含在一个事务中——这是最佳解决方案(那么第二个请求将等待或失败),我想指出,我的问题的目的是找到一种,c#,sql-server,transactions,C#,Sql Server,Transactions,工作……几乎和甲骨文一样好。您可能无法进一步推动SQL Server,除非您希望始终管理错误/回滚。您的第二点可能代表一个单独的问题……但是,如果流程完全包含在一个事务中——这是最佳解决方案(那么第二个请求将等待或失败),我想指出,我的问题的目的是找到一种方法,确保只通过一个请求更新余额(来自任一申请)一次,确保余额不会变为负值。我已更新了我的原始问题以使其更清晰。请求从选择执行业务流程所依据的余额开始。正如我在上一条评论中提到的,如果出现故障,不可能回滚中间业务流程。我仍然不理解快照隔离对我的


工作……几乎和甲骨文一样好。您可能无法进一步推动SQL Server,除非您希望始终管理错误/回滚。您的第二点可能代表一个单独的问题……但是,如果流程完全包含在一个事务中——这是最佳解决方案(那么第二个请求将等待或失败),我想指出,我的问题的目的是找到一种方法,确保只通过一个请求更新余额(来自任一申请)一次,确保余额不会变为负值。我已更新了我的原始问题以使其更清晰。请求从选择执行业务流程所依据的余额开始。正如我在上一条评论中提到的,如果出现故障,不可能回滚中间业务流程。我仍然不理解快照隔离对我的情况有帮助。你能再复习一下我的问题吗。
SET ALLOW_SNAPSHOT_ISOLATION ON
SET TRANSACTION ISOLATION LEVEL SNAPSHOT