保护事务的可靠性(事务类型;事务隔离级别)

时间:2010-03-31 08:43:53

标签: sql transactions isolation-level

中间层组件将在应用程序中执行数据访问例程。该组件将调用多个SQL Server存储过程来执行数据库更新。所有这些过程调用都在单个事务的控制下运行。 中间层的代码将实现以下对象:

SqlCommand comm = connection.CreateCommand();
SqlTransaction trans;

我必须如何向组件添加代码以指定针对此类错误的最高级别的保护(两个用户尝试同时更新相同的数据)。

1 个答案:

答案 0 :(得分:0)

您使用IsolationLevel

using (SqlConnection con = new SqlConnection(connectionString))
{
    using (SqlTransaction tran = con.BeginTransaction(IsolationLevel.Serializable))
    {
        SqlCommand cmd = con.CreateCommand();

        // etc...

        con.Open();


    }
}

您仍然需要捕获适当的SQL异常......