我需要使用DbTransactions(在单个数据库上),但我不确定如何在部署到生产环境时确保它能继续工作。
应用程序能够使用SQL DbTransactions有哪些要求? 它们是否默认允许在SQLServer中使用(以及与MSDTC的交易是什么)?
答案 0 :(得分:7)
是的,默认情况下会启用交易 - 我不认为这是您可以禁用的内容。每次运行查询时,它都可能作为自动提交,隐式事务运行,除非另有说明。
如果您运行分布式事务,MSDTC将发挥作用。如果可以,我会避免它。该方面可以被禁用。如果这就是您正在使用的内容,那么您需要确保在目标系统上配置它。
在存储过程中使用DBTransaction对象进行简单的连续查询或事务不需要MSDTC。
答案 1 :(得分:2)
除了迈克尔所说的,
有显式和隐式事务,如果你没有启动事务,显式SQL Server会为你启动一个隐式事务,这就要使它成为ACID(原子性,一致性,隔离性,持久性)