关于简历信息内容存进数据库的相关问题
简历信息有一块内容是校内活动的,包含校内荣誉、校内职务等内容
我有两种方案,但是不知道哪种方案比较好,请各位大神帮我看看
第一种:设置主从表
注册表(注册编号、姓名、毕业院校......)主键:注册编号
校内荣誉表(系统自动编号、注册编号、获奖时间、奖项) 主键:系统自动编号 外键:注册编号
校内职务表(系统自动编号、注册编号、起止时间、职务、职务描述)主键:系统自动编号 外键:注册编号
注册表是父表,其他两个表是子表
第二种:就一张校内活动表
校内活动表(编号、姓名、毕业院校、社团活动......)
其中社团活动用个text字段类型表示,可以填写校内获得荣誉或校内职务等
这是我能想到的两种方法,请帮我看看哪种好,或者有没有更优的法子
关键看你打算做什么。荣誉、职务是多条记录对应主表学生的一条。那么第一个方法,查询某个职务或者荣誉对应的学生,会比较方便。
第二个方法,如果不需要这种横向的查询,那么它是最简洁的方式,虽然会造成一些冗余数据(比如同样的职务,分散在多个学生记录中)。
除了使用关系型数据库,还可以用xml,nosql等方式存储非线性的、结构化的数据(所谓结构化,就是你这种一对多,甚至每个多的一方还对了别的记录)。比如mongodb这样的数据库。
从数据库设计的角度来讲的话 设置主从表更加灵活
这就得看你简历信息存入库之后,在业务中是如何使用的,是否需要查询荣誉或职务信息的某些字段,还是说只要查询就必定是查询所有的信息。
如果需要查询到某些字段的话,以主从表这种较为关系清晰的方法来做是较为合适的。
如果就是要查询所有的信息,那把这些荣誉和职务信息作为字段存入校园活动表中,查询起来会更更快捷。
从数据库设计的角度来讲的话 设置主从表更加灵活,但是你不知道信息有多少时 关系型数据库表只做索引,用 一个二进制字段加上 richedit可能会更简洁好用
数据库设计应该设置主存表,一般是这样的,
主从表比较好,设计比较灵活,更易扩展。第二个方案以后的扩展性很差
主从表是减少主表体积,保证查询的速度;
有人说第二个方案以后的扩展性很差,恰恰相反。