Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Операцията не е валидна за състоянието на грешката на транзакцията и обхвата на транзакцията

След като направих известно проучване, изглежда, че не мога да имам отворени две връзки към една и съща база данни с блока TransactionScope. Трябваше да променя кода си, за да изглежда така:

public void MyAddUpdateMethod()
{
    using (TransactionScope Scope = new TransactionScope(TransactionScopeOption.RequiresNew))
    {
        using(SQLServer Sql = new SQLServer(this.m_connstring))
        {
            //do my first add update statement            
        }

        //removed the method call from the first sql server using statement
        bool DoesRecordExist = this.SelectStatementCall(id)
    }
}

public bool SelectStatementCall(System.Guid id)
{
    using(SQLServer Sql = new SQLServer(this.m_connstring))
    {
        //create parameters
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да се свържа с MS SQL Server с помощта на Inno Setup?

  2. Вижте дали дадена таблица има ограничение по подразбиране в SQL Server, като използвате OBJECTPROPERTY()

  3. Най-бързият начин за намиране на остарели функции, които все още се използват в екземпляр на SQL сървър (пример за T-SQL)

  4. Причини за надстройка до SQL Server 2017

  5. SQL Server:Индексни колони, използвани в like?