日期:2014-05-18  浏览次数:20343 次

询问一个非常简单的数据库设计问题
现在需要做一个学校的信息发布系统,需要发布的信息有教务考试信息、就业信息、通知等
但是每个信息是要将不同的属性标出的,就像XML文件那种,每个信息要分解成时间地点主题之类的
如果按大类分的话,大概分为以下几类
1、教务信息,包括考试信息、加课停课信息、答疑安排等
      主要属性包括:类型(考试、课程、答疑等)、课程名、面向对象、时间、地点等
2、就业信息
      主要属性包括:类型(招聘、实习、双选会等)、公司名、职位名、工作地点、招聘地点、时间、截止期限等
3、讲座信息
      主要属性包括:讲座类型、讲座题目、演讲人、地点、时间等

我们可以看到以上几个大类中属性重复的要素还是比较多的,比如都有时间、地点等。现在考虑数据库设计,是将每个大类装入不同的表,还是统一装入一张表,在显示信息时再有条件的选择项目?(比如表中有1-5这几个项目,如果是教务信息在显示时显示1-3项,就业则是3-5项。)或者是干脆采用XML形式存储?
因为我对这个基本没有什么了解,也没有任何经验,希望大家能大概指导我一下。主要就是数据库的表,应该只建立一个还是每种类型一个表?谢谢大家!!

------解决方案--------------------
是将每个大类装入不同的表,还是统一装入一张表,在显示信息时再有条件的选择项目?

-----------------
都可以 把基类或基接口搞好才是关键
------解决方案--------------------
几个大类的属性都不一致是不能放在一个表里的,要分开来放的,每个大类是个表
------解决方案--------------------
肯定是分为不同的表,如果表之间关联性强,且多表操作比较频繁,则根据需要建立视图
------解决方案--------------------
分小类建表,数量多些,表之间建立关系,就可以了~