PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak zmapować wyliczenie PostgreSQL za pomocą JPA i Hibernate?

Rozgryzłem to. Musiałem użyć setObject zamiast setString w funkcji nullSafeSet i przekazać Types.OTHER jako java.sql.type, aby jdbc wiedziało, że jest to typ postgres.

public void nullSafeSet(PreparedStatement st, Object value, int index) throws HibernateException, SQLException {
    if (value == null) {
        st.setNull(index, Types.VARCHAR);
    }
    else {
//            previously used setString, but this causes postgresql to bark about incompatible types.
//           now using setObject passing in the java type for the postgres enum object
//            st.setString(index,((Enum) value).name());
        st.setObject(index,((Enum) value), Types.OTHER);
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy indeksy postgres JSON są wystarczająco wydajne w porównaniu z klasycznymi znormalizowanymi tabelami?

  2. Instalowanie pg -v 0.17.1

  3. Ewolucja tolerancji błędów w PostgreSQL

  4. Importuj zrzut MySQL do bazy danych PostgreSQL

  5. Pula połączeń PostgreSQL z PgBouncer