Я хочу убедиться, что все строки в моей таблице имеют уникальную комбинацию из двух полей, и я хочу указать это, используя аннотации в моем классе сущностей. Я попытался использовать комбинацию @Table и @UniqueConstraint, но, по-видимому, я делаю это неправильно, поскольку могу только указать, что отдельные столбцы должны быть уникальными (я уже могу указать это, используя уникальное свойство @ Column) чем комбинация столбцов. Например, я хочу, чтобы таблица с полями A и B содержала только строки с уникальной комбинацией A и B. Ни одно поле / столбец не должно быть уникальным, это комбинация двух, которые должны быть уникальными.
Вот что я пробовал до сих пор без радости:
@Table(name = "MY_TABLE",
uniqueConstraints = @UniqueConstraint(columnNames =
{ "FIELD_A", "FIELD_B" }))
и
@Table(name = "MY_TABLE",
uniqueConstraints = { @UniqueConstraint(columnNames =
{ "FIELD_A", "FIELD_B" }) })
Может кто-нибудь, пожалуйста, предложить правильный способ сделать это? Также если это можно использовать аннотации JPA вместо специфичных для Hibernate аннотаций, которые были бы предпочтительнее.
Заранее благодарен за вашу помощь.
- Джеймс
ваша вторая попытка
@Table(name = "MY_TABLE",
uniqueConstraints = { @UniqueConstraint(columnNames =
{ "FIELD_A", "FIELD_B" }) })
должна сработать, как ожидалось.