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

Postgres UUID e Hibernate → no se encontró ninguna columna

Gracias al amable comentario de @JBNizet, descubrí que el problema no estaba en los comportamientos extraños de UUID, sino que Hibernate no escapa a los identificadores de forma predeterminada.

En realidad, hay tres soluciones fáciles a la pregunta:

  1. No use palabras clave reservadas, cambie el nombre de la tabla a otra cosa.

  2. Escape manualmente el nombre de la tabla (como @Table(name = "\"user\"") en HUser.java).

  3. Agregar línea hibernate.globally_quoted_identifiers=true a su configuración. Me pregunto por qué no es true de forma predeterminada... Consulte esto para más detalles.