Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Enum w hibernacji, utrzymujące się jako enum

Jeśli podasz Hibernate definicję kolumny, nie będzie próbował jej odgadnąć:

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

Jeśli z jakiegokolwiek powodu nie polegasz na Hibernate w celu wygenerowania schematu, nie musisz nawet podawać prawdziwych wartości dla columnDefinition. W ten sposób usuniesz instancję, w której musisz zsynchronizować wartości. Po prostu synchronizuj swoje wyliczenie Java i skrypt Liquibase lub SQL:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak przechowywać datę i godzinę Java Date na Mysql za pomocą JPA?

  2. Jak odzyskać klaster MySQL Galera z asynchronicznego urządzenia podrzędnego?

  3. Błąd migracji Laravel:błąd składni lub naruszenie dostępu:1071 Podany klucz był za długi; maksymalna długość klucza to 767 bajtów

  4. Funkcja MySQL CRC32() – Przykłady

  5. Replikacja MySQL i przełączanie awaryjne oparte na GTID — szczegółowe informacje o błędnych transakcjach