对于使用默认的 SQL Server 安装和普通的 System.Data.SqlClient 类,ADO.NET 中的默认事务隔离级别是什么?
对于使用默认的 SQL Server 安装和普通的 System.Data.SqlClient 类,ADO.NET 中的默认事务隔离级别是什么?
READ COMMITTED是Microsoft SQL Server数据库引擎的默认隔离级别。
来源:
以下是它与其他隔离级别的比较:
SqlConnection.BeginTransaction()
的MSDN文档也指出了Read committed
...要将隔离级别重置为默认值(READ COMMITTED)...
hkf的回答对于使用SqlConnection.BeginTransaction()
手动启动事务的情况给出了正确的答案。在这种情况下,默认级别是ReadCommitted。
然而,在ADO.NET中启动新事务的方式不仅限于手动启动:还可以通过使用System.Transactions
命名空间中的类,特别是创建TransactionScope
,来自动创建事务。
与手动启动的事务相反,由System.Transactions
基础结构(因此也由TransactionScope
)创建的事务是Serializable的。
有关更多信息,请参见下面的链接: