在Hibernate中,当我们尝试实现“通过外键进行一对一映射”时,外键是否也需要UNIQUE(在表级别)? 如果不是,Hibernate如何确保父表中的一条记录映射到唯一的外键(映射到另一个实体)?
假设我有一个非常简单的一对一场景来实现。一个学生只有一个地址,反之亦然。
student_table
id (pk),
name
address_table
id (pk),
desc,
stu_id (fk ==> references id of student_table)
在上面,我是否必须在我的address_table中对fk(stu_id)设置UNIQUE约束?
或者Hibernate是否只会阻止我在address_table中复制外键,如下所示?
s = new student(1)
adress1 = new address
address1.set(s)
address1.save
然后......
address2 = new address
address2.set(s)
address2.save ==== I m trying to set the same student in the new address..
So will Hibernate allow this ?