code: private ImmutableTriple<Integer,ResultSet,SQLWarning> update(final String sql, final int autoGeneratedKeys) throws SQLException {
  
          checkClosed();
  
          try {
              final UpdateResult res = this.handler.whenSQLUpdate(sql, NO_PARAMS);
              final SQLWarning w = res.getWarning();
              final ResultSet k = (res.generatedKeys == null 
                                   || autoGeneratedKeys == NO_GENERATED_KEYS) 
                  ? EMPTY_GENERATED_KEYS.withStatement(this) 
                  : res.generatedKeys.resultSet().withStatement(this);
              
              return ImmutableTriple.of(res.getUpdateCount(), k, w);
          } catch (SQLException se) {
              throw se;
          } catch (Exception e) {
              throw new SQLException(e.getMessage(), e);
          } // end of catch
      }
docs: Executes update.
  @return Triple of update count, generated keys (or null)
  and optional warning