В следующем определении столбца JPA по умолчанию создается «целочисленный» тип данных для всех баз данных (например, h2, mysql, postgres)
@Column(name = "type", nullable = false)
@Type(type = "com.mycompany.hibernate.usertype.GenericEnumUserType", parameters = {
@Parameter(name = "enumClass", value = "com.mycompany.model.DegreeType"),
@Parameter(name = "identifierMethod", value = "toInt"),
@Parameter(name = "valueOfMethod", value = "fromInt") })
@NotNull
private DegreeType type;
Я хотел бы использовать минимальное хранилище для этого поля и, следовательно, предпочел бы использовать параметр columnDefinition для генерации schema2ddl. Но похоже, что tinyint не поддерживается в postgres, но поддерживается в других базах данных, упомянутых выше.
Можно ли создавать разные файлы SQL в зависимости от типа базы данных.
1. Каков наилучший подход для достижения этой цели?
2. Какой тип данных (с минимальным объемом памяти) лучше всего подходит для этой цели? Это будет smallint