locked
Rollback doesn't work.. RRS feed

  • Question

  • User1873694115 posted

    It is Oracle DB... I throw the Exception but rollback doesn't work  Frown

     

    Any Ideas? Smile

     

    		public void SaveDay(int userID, Day day)
    		{
    			if (day == null)
    			{
    				return;
    			}
    
    			OracleConnection connection = null;
    			OracleCommand oracleCommand = null;
    
    			OracleTransaction transaction = null;
    
    			try
    			{
    				connection = GetConnection();
    				connection.Open();
    
    				transaction = connection.BeginTransaction();
    
    				foreach (ProjectActivity activity in day.ProjectActivities)
    				{
    					oracleCommand = new OracleCommand("SAVEPROJECTACTIVITY", connection);
    
    					oracleCommand.CommandType = System.Data.CommandType.StoredProcedure;
    
    					oracleCommand.Parameters.Add(new OracleParameter("PARAM_USERID", userID));
    					oracleCommand.Parameters.Add(new OracleParameter("PARAM_MONTHNUBMER", activity.MonthNumber));
    					oracleCommand.Parameters.Add(new OracleParameter("PARAM_YEAR", activity.Year));
    
    
    					int parameterType = 0;
    					OracleParameter outputParameter = new OracleParameter("PARAM_OUT_PROJECT_ACTIVITY_ID", parameterType);
    					outputParameter.Direction = System.Data.ParameterDirection.Output;
    					oracleCommand.Parameters.Add(outputParameter);
    
    					oracleCommand.Transaction = transaction;
    					oracleCommand.ExecuteNonQuery();
    
    					throw new Exception();
    				}
    
    				transaction.Commit();
    
    			}
    			catch (Exception exception)
    			{
    				transaction.Rollback();
    			}
    			finally
    			{
    				connection.Dispose();
    				oracleCommand.Dispose();
    			}

    Monday, March 7, 2011 10:45 AM

Answers

  • User1873694115 posted

    We have found the answer...

    it were COMMITs in Stored Procedure that we use Wink

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Tuesday, March 8, 2011 5:55 AM