code: void checkAccessRights(Session session) {
  
          switch (type) {
  
              case StatementTypes.CALL : {
                  break;
              }
              case StatementTypes.INSERT : {
                  session.getGrantee().checkInsert(targetTable,
                                                   insertCheckColumns);
  
                  break;
              }
              case StatementTypes.SELECT_CURSOR :
                  break;
  
              case StatementTypes.DELETE_WHERE : {
                  session.getGrantee().checkDelete(targetTable);
  
                  break;
              }
              case StatementTypes.UPDATE_WHERE : {
                  session.getGrantee().checkUpdate(targetTable,
                                                   updateCheckColumns);
  
                  break;
              }
              case StatementTypes.MERGE : {
                  session.getGrantee().checkInsert(targetTable,
                                                   insertCheckColumns);
                  session.getGrantee().checkUpdate(targetTable,
                                                   updateCheckColumns);
  
                  break;
              }
          }
      }
docs: /*
  long     id         = cmd.getResultId();
  int      actionType = cmd.getActionType();
  Result   result     = sessionData.getDataResult(id);
  Object[] pvals      = cmd.getParameterData();
  Type[]   types      = cmd.metaData.columnTypes;
  
  StatementQuery statement = (StatementQuery) result.getValueObject() ;
  QueryExpression qe = statement.queryExpression;
  
  Table baseTable = qe.getBaseTable();
  
  int[] columnMap = qe.getBaseTableColumnMap();
  
  
  switch (actionType) {
  
  case ResultConstants.UPDATE_CURSOR :
  case ResultConstants.DELETE_CURSOR :
  case ResultConstants.INSERT_CURSOR :
  }
  
  return Result.updateZeroResult;