docs: public void updateUserMeta(final long userId, final String key, final String value) throws SQLException {
        Connection conn = null;
        PreparedStatement stmt = null;
        ResultSet rs = null;
        try {
           conn = connectionSupplier.getConnection();
           stmt = conn.prepareStatement(firstUserMetaIdSQL);
           stmt.setLong(1, userId);
           stmt.setString(2, key);
           rs = stmt.executeQuery();
           if(rs.next()) {
              long umetaId = rs.getLong(1);
              SQLUtil.closeQuietly(stmt, rs);
              stmt = null;
              rs = null;
              stmt = conn.prepareStatement(updateUserMetaSQL);
              stmt.setString(1, value);
              stmt.setLong(2, umetaId);
              stmt.executeUpdate();
           } else {
              SQLUtil.closeQuietly(stmt, rs);
              stmt = null;
              rs = null;
              stmt = conn.prepareStatement(insertUserMetaSQL);
              stmt.setLong(1, userId);
              stmt.setString(2, key);
              stmt.setString(3, value);
              stmt.executeUpdate();
           }
        } finally {
           SQLUtil.closeQuietly(conn, stmt, rs);
        }
     }