public int execute(ParameterizedCommand command) throws MetaException {
    if (!shouldExecute(command)) {
      return -1;
    }
     try {
       return execute(command.getParameterizedQueryString(getDatabaseProduct()),
           command.getQueryParameters(), command.resultPolicy());
     } catch (Exception e) {
       handleError(command, e);
       throw e;
     }
  }
Executes a {@link NamedParameterJdbcTemplate#update(String, org.springframework.jdbc.core.namedparam.SqlParameterSource)}
calls using the query string and parameters obtained from {@link ParameterizedCommand#getParameterizedQueryString(DatabaseProduct)} and
{@link ParameterizedCommand#getQueryParameters()} methods. Validates the resulted number of affected rows using the
{@link ParameterizedCommand#resultPolicy()} function.

@param command The {@link ParameterizedCommand} to execute.
@return Returns the number of affected rows.
@throws MetaException Forwarded from {@link ParameterizedCommand#getParameterizedQueryString(DatabaseProduct)} or
                      thrown if the update count was rejected by the {@link ParameterizedCommand#resultPolicy()} method
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/txn/jdbc/MultiDataSourceJdbcResource.java