Hibernate SQL - 中间表b / w父级和子级(不同类型)

时间:2017-05-14 11:46:10

标签: java mysql sql-server hibernate

我正在研究存储患者数据的程序。

  • 我有一张patient表。

  • 一个中间表patient_disease,用于映射患者所患的疾病(存储疾病的ID和表名)。

  • 我有很多disease____个表,每个表都有各自的列/数据。

  • patientpatient_disease保持1:M的关系

  • patient_diseasedisease____保持1:1的关系

现在的工作原理是保存patientdisease____,然后将生成的ID与{* 1}}一起存储在疾病的表名中。

  1. 这是正确的方法吗?
  2. 我正在使用hibernate来加载这些关系。加载patient_disease列表没有问题,但是当疾病的表名存储在patient_disease对象本身时,如何加载疾病对象? (次要表可能?)
  3. 如果这听起来令人困惑,我很抱歉

    enter image description here

1 个答案:

答案 0 :(得分:0)

在您的情况下,您需要再创建两个表。

第一桌威士忌包含:

  • ID_Des(PK)
  • 疾病影响

第二张表:

  • ID_Patient(PK,FK)(对Patient_ID的引用)
  • ID_Des(PK,FK)(对ID_des的引用)

enter image description here