SQLServer中默认是否允许事务?

时间:2009-01-20 13:41:54

标签: sql-server sql-server-2005 transactions

我需要使用DbTransactions(在单个数据库上),但我不确定如何在部署到生产环境时确保它能继续工作。

应用程序能够使用SQL DbTransactions有哪些要求? 它们是否默认允许在SQLServer中使用(以及与MSDTC的交易是什么)?

2 个答案:

答案 0 :(得分:7)

是的,默认情况下会启用交易 - 我不认为这是您可以禁用的内容。每次运行查询时,它都可能作为自动提交,隐式事务运行,除非另有说明。

如果您运行分布式事务,MSDTC将发挥作用。如果可以,我会避免它。该方面可以被禁用。如果这就是您正在使用的内容,那么您需要确保在目标系统上配置它。

在存储过程中使用DBTransaction对象进行简单的连续查询或事务不需要MSDTC。

答案 1 :(得分:2)

除了迈克尔所说的,

有显式和隐式事务,如果你没有启动事务,显式SQL Server会为你启动一个隐式事务,这就要使它成为ACID(原子性,一致性,隔离性,持久性)