Рассмотрим следующие
@Entity
@Table
@Check(constraints = "A IS NOT NULL OR B IS NOT NULL")
public class Model {
@Id
private Long id;
private A a;
private B b;
}
Проблема в том, что я не знаю, как назвать checkConstraint? Я хочу что-то вроде @Check (constraints = @Constraint ("name" = "CHK_CONST_1", "A IS NOT NULL OR B IS NOT NULL"))
Согласно документации Hibernate, это невозможно.
ты пробовал это stackoverflow.com/questions/31983454/hibernate-check-annotat ion
@SimonMartinelli - я тоже склонен верить, но спасибо за подтверждение





Я думаю, вам следует использовать атрибут @Column и name для указания имени столбца.
@Entity
@Table
@Check(constraints = "COL_A IS NULL OR COL_B IS NOT NULL")
public class Model {
@Id
private Long id;
@Column(name = "COL_A")
private A a;
@Column(name = "COL_B")
private B b;
}
проверьте это: - Аннотация проверки гибернации
Я считаю, что OP после имени ограничения, а не имени столбца?
Это верно. Мой вопрос состоял в том, чтобы назвать проверочное ограничение. Но спасибо, что пропустил @Column, чтобы он работал
Простое ограничение? Основное ограничение?