T
tsp
Unregistered / Unconfirmed
GUEST, unregistred user!
很多MIS系统中有这样的情况:第一,有很多子系统;第二,有很多数据需要进行本期、
累计以及上年同期数据的比较。现在有个问题:分别以SQLServer和Oracle为例,为了达到
程序处理方便快捷和数据分类明确两者的平衡,应该如何设计数据库?
一种方式是:建立公用数据库以及各专业数据库,对某一个数据表来说,本年度数据和
历史数据放在一起。这样做的好处是求累计数据和同期数据非常方便,但缺点是经过一段时
间后,不经常访问的历史数据越来越多,影响了访问本年度常用数据的效率;
另一种方式是:建立公用数据库和年度数据库,本年度数据和历史数据分开存放在不同
的年度数据表中。这样做的好处是系统经常访问的数据主要存放在本年度中,访问效率高,
分类清晰,备份方便,但缺点是统计累计和同期数据需要跨越多个数据库,程序设计较为复
杂。或者在此基础上设计另外一种方案是:以3-5年为一个时间段建立年度数据,但如果求
跨越两个时间段的累计或同期数据又是一个问题。
第三种方式是:建立公用数据库以及使用单位数据库。比如说,总公司下面有分公司A、
B、C等,每个单位都要使用这套系统,但他们之间是没有联系的,那么如果要在总公司建库
的话,就建立公用数据库和A、B、C三个库,这三个库中放的是本单位的所有专业、所有年
份的数据,这样各自事务互不相干。但有一个问题就是,总公司在汇总数据时又遇到了麻烦。
每次开始设计一个项目之前,我都要为这些问题费一番脑筋,请大家踊跃讨论,到底该
如何设计才是比较理想的呢?
烦请赐教!
累计以及上年同期数据的比较。现在有个问题:分别以SQLServer和Oracle为例,为了达到
程序处理方便快捷和数据分类明确两者的平衡,应该如何设计数据库?
一种方式是:建立公用数据库以及各专业数据库,对某一个数据表来说,本年度数据和
历史数据放在一起。这样做的好处是求累计数据和同期数据非常方便,但缺点是经过一段时
间后,不经常访问的历史数据越来越多,影响了访问本年度常用数据的效率;
另一种方式是:建立公用数据库和年度数据库,本年度数据和历史数据分开存放在不同
的年度数据表中。这样做的好处是系统经常访问的数据主要存放在本年度中,访问效率高,
分类清晰,备份方便,但缺点是统计累计和同期数据需要跨越多个数据库,程序设计较为复
杂。或者在此基础上设计另外一种方案是:以3-5年为一个时间段建立年度数据,但如果求
跨越两个时间段的累计或同期数据又是一个问题。
第三种方式是:建立公用数据库以及使用单位数据库。比如说,总公司下面有分公司A、
B、C等,每个单位都要使用这套系统,但他们之间是没有联系的,那么如果要在总公司建库
的话,就建立公用数据库和A、B、C三个库,这三个库中放的是本单位的所有专业、所有年
份的数据,这样各自事务互不相干。但有一个问题就是,总公司在汇总数据时又遇到了麻烦。
每次开始设计一个项目之前,我都要为这些问题费一番脑筋,请大家踊跃讨论,到底该
如何设计才是比较理想的呢?
烦请赐教!