sql >> Base de Datos >  >> RDS >> Mysql

Cómo establecer el orden de las columnas de una clave primaria compuesta usando JPA/Hibernate

Hay una manera de hacerlo. La forma en que hibernate elige ordenar un conjunto de columnas para una clave principal es alfabéticamente según los nombres de objeto definidos.

Entonces, por ej. si declaras tus objetos así:

private byte loc;
private long epochtime;

Obtendrá lo que está obteniendo ahora:

(`epochtime`,`loc`)

Pero si les cambia el nombre, por ejemplo:

private byte aloc;
private long epochtime;

Lo generaría como:

(`aloc`, `epochtime`)

Como a viene antes de e.

Eso es lo que descubrí cuando quería que mi índice agrupado estuviera en el orden específico. Sé que es irritante, pero es la única manera que pude encontrar para no tener que cambiar mi esquema manualmente.