code: private void checkJdbcSupport(DatabaseMetaData metaData) throws SQLException {
  
          if (_getGeneratedKeys && !metaData.supportsGetGeneratedKeys()) {
              throw new ControlException("The database does not support getGeneratedKeys.");
          }
  
          if (_batchUpdate && !metaData.supportsBatchUpdates()) {
              throw new ControlException("The database does not support batchUpdates.");
          }
  
          if (_scrollType != JdbcControl.ScrollType.DRIVER_DEFAULT
                  && !metaData.supportsResultSetConcurrency(_scrollType.getType(), _scrollType.getConcurrencyType())) {
              throw new ControlException("The database does not support the ResultSet concurrecy type: " + _scrollType.toString());
          }
  
          if (_holdability != JdbcControl.HoldabilityType.DRIVER_DEFAULT
                  && !metaData.supportsResultSetHoldability(_holdability.getHoldability())) {
              throw new ControlException("The database does not support the ResultSet holdability type: " + _holdability.toString());
          }
      }
docs: Checks that all statement options specified in annotation are supported by the database.
  
  @param metaData
  @throws SQLException