我有一个关于hibernate约束的问题,关于我之前从未遇到过的一个问题。 想象一下,我有一个表(快照),我可以在其中添加一些快照行,每个快照行必须与另一个表的一行相关。但是这种关系不仅与一个表有关,多个表可以与此快照表连接。但是我想防止一旦一行快照已经链接到另一个行表,我们就说:
A.row1->Snapshot.row1
另一张桌子不可能为他的关系选择同一行
B.row1->Snapshot.row1.
因为如果不这样的话,想象一下当我尝试在A上进行级联删除时的问题。
任何想法如何使用hibernate唯一约束
答案 0 :(得分:-1)
使链接到另一个表的字段(我认为它被称为row1)是唯一的。
@Column(unique = true)
编辑: 您无法控制使用主键的其他表的数量。您可以做的是引入一个新表来管理您的链接。在那里你必须有一个名为link_from的列,另一个名为link_to,并使link_to唯一。