Уникальное ограничение с помощью составных ключей в JPA
У меня есть сущность с двумя внешними ключами, которую я также хочу использовать в качестве ограничения. Есть ли способ в JPA определить ограничение, которое будет уникальным только в том случае, если повторяются одинаковые FROM_CURRENCY_ID и TO_CURRENCY_ID, но позволяет, если значения для отменены для FROM_CURRENCY_ID и TO_CURRENCY_ID
@Entity
@Table(name="CURRENCY_CONVERSION")
public class CurrencyConversion extends BaseEntity {
private static final long serialVersionUID = -2440725717151990999L;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "FROM_CURRENCY_ID")
private Currency fromCurrencyId;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "TO_CURRENCY_ID")
private Currency toCurrencyId;
@Column(name = "CURRENCY_RATE", nullable = false)
private Double rate;
// getter setters
}
1 ответ
Добавить уникальное определение ограничения в @Table
аннотирование
@Table(
uniqueConstraints=
@UniqueConstraint(columnNames={"column_1", "column_2"})
)