医院一个科室的数据库,需要存储病人的基本信息如(姓名性别年龄籍贯送检物等)还有一部分常用的诊断(如镜检,眼检,关键词1,关键词2,关键词3,初诊人,复诊人,检查日期等),还有取材记录信息(包括大小,颜色,质地,名称等内容)这些信息不是一次性输入的,是先录基本信息,然后录入取材信息,过1,2天再录诊断信息,总共需要约60个列,我想问是分成2-3个表,还是在一个表里?还要涉及到统计查询的方便性,请大家帮忙!
调试欢乐多
而这样的数据库表是不符合第一范式的: 字段1 字段2 字段3 字段4
字段3.1 字段3.2 很显然,在当前的任何关系数据库管理系统(DBMS)中,傻瓜也不可能做出不符合第一范式的数据库,因为这些DBMS不允许你把数据库表的一列再分成二列或多列。因此,你想在现有的DBMS中设计出不符合第一范式的数据库都是不可能的。 第二范式(2NF):数据库表中不存在非关键字段对任一候选关键字段的部分函数依赖(部分函数依赖指的是存在组合关键字中的某些字段决定非关键字段的情况),也即所有非关键字段都完全依赖于任意一组候选关键字。 假定选课关系表为SelectCourse(学号, 姓名, 年龄, 课程名称, 成绩, 学分),关键字为组合关键字(学号, 课程名称),因为存在如下决定关系: (学号, 课程名称) → (姓名, 年龄, 成绩, 学分) 这个数据库表不满足第二范式,因为存在如下决定关系: (课程名称) → (学分) (学号) → (姓名, 年龄) 即存在组合关键字中的字段决定非关键字的情况。 由于不符合2NF,这个选课关系表会存在如下问题: