sql >> Databasteknik >  >> RDS >> Mysql

Enum i Hibernate, kvarstår som en enum

Om du ger Hibernate en kolumndefinition kommer den inte att försöka gissa en:

@Column(columnDefinition = "enum('MALE','FEMALE')")
@Enumerated(EnumType.STRING)
private Gender gender;

Om du inte förlitar dig på Hibernate för att generera ditt schema av någon anledning, behöver du inte ens ange verkliga värden för columnDefinition. På så sätt tar du bort en instans där du behöver hålla värdena synkroniserade. Håll bara din Java-enum och ditt Liquibase- eller SQL-skript synkroniserade:

@Column(columnDefinition = "enum('DUMMY')")
@Enumerated(EnumType.STRING)
private ManyValuedEnum manyValuedEnum;


  1. HikariCP Postgresql Driver hävdar att de inte accepterar JDBC URL

  2. ATAN() Funktion i Oracle

  3. postgreSQL - psql \i :hur man kör skript i en given sökväg

  4. Introduktion till Slowly Changing Dimensions (SCD)