Vous n'êtes pas identifié(e).

#1 17/09/2020 13:40:50

Phil65
Membre

génération de clé primaire avec Hibernate

J'utilise Hibernate 5.4.11 / Postres 10 avec ntelIiJ Ultimate.
Je ne parviens pas à générer une clé primaire auto incrémentée via une séquence
voici mon code :

@Entity
@Table(name = "warehouses")
@SequenceGenerator(name = "SEQUENCE_WAREHOUSE", sequenceName = "warehouses_id_seq", allocationSize = 1)
public class Warehouse implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQUENCE_WAREHOUSE")
    @Column(name = "id")
    private Integer id;

la table warehouses est bien crée, la séquence également mais la clé primaire n'a pas de valeur par défaut = nextval('warehouses_id_seq'::regclass)

et donc à l'insertion il y a une erreur clé primaire = null

....

Hors ligne

#2 17/09/2020 16:13:03

Phil65
Membre

Re : génération de clé primaire avec Hibernate

I add the line :
@ColumnDefault("nextval('public.warehouses_id_seq')");
to fix the problem
But I'm quite desapointed, I expected Hibernate to do it automaticaly with the SequenceGenerator...

Hors ligne

#3 17/09/2020 22:31:56

gleu
Administrateur

Re : génération de clé primaire avec Hibernate

Là, clairement, c'est une problématique plus Java/Hibernate que PostgreSQL même smile


Guillaume.

Hors ligne

#4 22/09/2020 07:36:22

Phil65
Membre

Re : génération de clé primaire avec Hibernate

Sans doute, mais je n'ai pas remarqué ce problème avec MySql !

Hors ligne

Pied de page des forums