サーバはトランザクションを続行できません.このセッションのアクティブなトランザクションは、別のセッションによってコミットまたは終了されます.

752 ワード

//      
public void DoTran()
{  //       
 SqlConnection myConn=GetConn();
 myConn.Open();
 SqlCommand myComm=new SqlCommand();
 //SqlTransaction myTran=new SqlTransaction();
 //  ,SqlTransaction         
 SqlTransaction myTran;
 //      
 myTran=myConn.BeginTransaction();
 try
 {
  //    ,                     
  //           
  myComm.Connection=myConn;
  myComm.Transaction=myTran; //   pubs   
  myComm.CommandText="USE pubs";
  myComm.ExecuteNonQuery();//  1
  myComm.CommandText=""; //  2
  myComm.ExecuteNonQuery();
   //    
  myTran.Commit();
 }
 catch(Exception err)
 {
  myTran.rollback();
  throw new ApplicationException("      ,    :"+err.Message);
  }
 finally
 {
  myConn.Close();
  }
}