JPA - 多个表中的唯一值

时间:2017-06-27 11:38:09

标签: mysql jpa

我需要确保列的值不仅在列本身内是唯一的,而且还在不同表的列中是唯一的(无连接)。

示例:

表A
ID |姓名
1 |彼得
2 | Manfred

表B
ID |姓名
 1 |卡尔  2 |理查德

不应该使用名称" Richard"向表A添加新行。因为它已经存在于表B中。

有没有办法用约束来做到这一点,还是我必须建立一个验证器? 我刚刚找到了确保在同一个表中使用注释的方法。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您可以在两个表上定义@EntityListeners,在@PrePersist @PreUpdate中编写将检查唯一性的逻辑。