0

我新的数据库设计和我的工作需要使用,可以被绑定到大量病人和每个病人一个单一的实体(药物)的项目可以有不同的剂量。为这种情况布置表格的最佳方式是什么?我可以使用一张桌子,只储存每种药物和剂量,并将其与独特的患者联系起来。但是,这会给我在药物表中重复条目(相同的药物,只是不同的剂量)。数据库设计与许多不同的单位一个单一的实体

我想是对每个药物名称的一个条目,让每个病人对特定MED独特的剂量。当然,单个病人也可能有许多不同的药物,所以我必须能够为不同的病人使用不同的药物。

我使用实体框架模型的第一种方法。我会使用单个表T_Patient_Medication并使用两个表ID中的每一个作为主键组合,然后使用该组合的剂量字段?如果是的话,我将如何建立联系以将此表与其他两个联系起来。有什么建议么?

回答

1

关闭我的头顶:

-a药物表(MedicineId,MedicineName等)。

-a病人表(PatientId,PatientName等)

-a患者医药表(MedicineId,PatientId,剂量,日期,票据等)。

换句话说,用药表包含每个唯一MED行,病人包含每个独特的患者一行。

患者医药表就是这两个东西满足:它含有patientId,一个medicineId然后别的唯一关于病人获得该药品(即名医生,剂量,开始日期等)。就个人而言,我会让患者用药表中的每一行都有自己的unqiue ID,与患者和药物ID的组合分开(当同一患者在不同时间用同一种药物返回时,您会做什么,如果你的主键是Patientid + Medicineid)。我的思维方式中,每个记录都应该有自己独特的ID。

表之间会有外键来强制执行这种关系:即,除非病人表中存在病人,并且药物存在于药物表中,否则不能在患者药表中添加行。同样重要的是可以防止从其他表中存在依赖记录的表中删除行。如果您花时间设置所有这些外键(关系),在EF中浏览相关记录将会很轻松。

这是毫无疑问的比这更复杂,但是这是一个关系表的基本理念。

+0

感谢@EJBrennan,这是我领导的地方,但无法弄清楚如何在模型视图中添加它。我结束了一位患者(1对多)PAT_MED和MEDICATION(1对多)PAT_MED。我添加了数量和剂量字段来完成表格。感谢您及时的回复 – jbolt 2013-05-12 02:28:40

相关问题