外键一对一映射

时间:2017-07-12 03:25:07

标签: hibernate

在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 ? 

0 个答案:

没有答案