docs: @Override
  	public T next() {
  		SQLException sqlException = null;
  		try {
  			T result = nextThrow();
  			if (result != null) {
  				return result;
  			}
  		} catch (SQLException e) {
  			sqlException = e;
  		}
  		// we have to throw if there is no next or on a SQLException
  		last = null;
  		closeQuietly();
  		throw new IllegalStateException("Could not get next result for " + dataClass, sqlException);
  	}