sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cómo mapear Postgres _INT8 a la entidad Java usando Hibernate?

_int8 es un alias interno para el tipo int8[] , es decir, una matriz de enteros largos.

No tengo idea de por qué se usa el prefijo de subrayado, es horrible, pero en realidad solo debería ser visible dentro del servidor, así que me sorprende que lo vea aparecer en los mensajes. Tome esto, por ejemplo, donde el servidor muestra bigint[] como tipo de columna en mensajes:

http://sqlfiddle.com/#!12/61bc5/1

Si desea mapearlo en Hibernate, debe mapearlo como long[] , si Hibernate incluso admite matrices SQL - que no parece . Probablemente tendrá que agregar su propia implementación de UserType que usa el soporte JDBC para arreglos SQL . Otro ejemplo en los foros de Hibernate . parece ser una pregunta frecuente , pero como la mayoría de las cosas en Hibernate/JPA, encontrará que tan pronto como intente usar algo que no sean las características más básicas de la base de datos, se estará golpeando la cabeza contra una pared de ladrillos.