识别和非识别关系

时间:2018-06-24 05:00:52

标签: sql-server database-design

我具有以下数据库结构,并且想要添加一个称为记事本的新表:

ClinicTable(Id PK)

PatientTable(Id PK,ClinicId PK FK)

DoctorTable(Id PK,ClinicId PK FK)

ConsultationTable(Id PK,ClinicId PK FK,PatientIdId FK,DoctorId FK)

  • 我正在等待回覆:业务需求,但是 记事本可以绑定到咨询(1到1)或绑定到 患者(1到M)。
  • 我们正在缓慢地进行重组和重构, 新产品版本的一部分,因此我不想将注释添加到 咨询表-我希望将其单独存储
  • 患者或咨询可能会或可能不会 记事本记录,但没有患者就无法存在记事本记录 或咨询。
  • 记事本记录将始终由单个医生输入,不能拥有 由其他任何医生

我该如何确定关系是可识别的还是不可识别的?

所有其他表格中都有诊所编号,但是我看不到我需要吗?

我认为它应该如下所示...

如果笔记与患者有关,那么我有:

NotepadTable(Id PK,PatientIdId PK FK,DoctorId PK FK)

如果注释与咨询有关,那么我有:

NotepadTable(标识PK,咨询标识PK FK)

0 个答案:

没有答案