我是新来的建模数据库。但我尽我所能尽可能多地学习。因此,我要问你,我的第一个学尝试是否有意义以下例子:这个数据库模型是否有意义?
所以我模仿数据库如下:
的DATABSE约药。根据患者的年龄,有几种药物应该给药。每个药品都可以属于一个或多个组(或没有)。
这仅仅是一个测试案例,用于展示我迄今为止学到的内容。所以每个提示提高我的技能是值得欢迎的!
非常感谢!
我是新来的建模数据库。但我尽我所能尽可能多地学习。因此,我要问你,我的第一个学尝试是否有意义以下例子:这个数据库模型是否有意义?
所以我模仿数据库如下:
的DATABSE约药。根据患者的年龄,有几种药物应该给药。每个药品都可以属于一个或多个组(或没有)。
这仅仅是一个测试案例,用于展示我迄今为止学到的内容。所以每个提示提高我的技能是值得欢迎的!
非常感谢!
relationtable
表名只是一个占位符,对吧?它应该更具描述性,也许dosage
?
东西告诉我年龄范围会有很大的变化。有些药物对3岁以下的儿童,5岁以下的儿童和10岁以下的儿童有不同的规定。请勿在relationtable
中包含两个额外的列(start
和end
),而不是创建单独的表。这将是更容易查询,我不会认为这是一个非规范化。
浅谈age
和dose
表 - 摆脱unit
列并使用标准化的固定单位。年龄和剂量mg。这将使查询更简单。不要害怕使用浮动数字,例如0.5代表六个月。
我同意托马斯写,想补充:
哪个版本是正确的,不能单独从表中告知。
作为一个经验法则:当一个没有正确名称和概念的表链接超过两个其他表时,我会怀疑。这是可能的,但往往暗示隐藏在某个地方的概念。
为了检查建议的模型是否正确,请咨询业务专家,如果在前三行之一中使用Superantibiotika替换Antibiotika,表格是否仍然正确。如果是这样,这意味着剂量不依赖于组,也不应该与其联系,所以我提出的模型会更加正确。
如果修改过的表格不正确,那么您的模型可能会更好,但我会仔细聆听它为什么不正确的解释。
非常感谢您的解释!我现在用下面的方法做了:https://www.dropbox.com/s/58sl06dm7ltf9w6/database_model2.png 现在感觉更有条理,但我看不出主要区别。如果你问我,两种可能性都会描述同一条信息。你写道,在表格中看不到正确的方式,所以你可以指出,在哪种情况下,我使用第一个,在这种情况下,我使用第二个?别忘了!我是一个新手。 ;-) – user1255102
使用标准化值是一个好主意。感谢提示。但是如果我必须使用一些不同的价值,那么最好的办法是什么?例如。剂量表应使用mg,g,kg表示某些数据,mg/d表示某些其他数据的mg/mg。 – user1255102
@ user1255102:一直使用mg,1 g == 1000 mg,1 kg = 1000000 mg。然而,第二个问题更困难。我想你会需要参考类型,即“/ day”,“/ kg体重”作为单独的列 –