public override IBatchCommandExecute CreateBatchCommand(BatchCommandType commandType)
 {
     switch (commandType)
     {
         case BatchCommandType.Update:
             return new BatchCommandUpdate(base.DataAccess);
         case BatchCommandType.Insert:
             return new BatchCommandInsert(base.DataAccess);
         case BatchCommandType.Upsert:
             return new BatchCommandUpsert(base.DataAccess);
         case BatchCommandType.Delsert:
             return new BatchCommandDelsert(base.DataAccess);
         default:
             throw new NotSupportedException(commandType.ToString());
     }
 }