这个问题是在不同的情况下使用不同的做法的,如某大型系统,有多个帐套,对后台数据库来说,帐套对应的数据库名称不一样,数据库之间表名都是一样名称的,这种是正常的情况,对软件来说也很好处理,建立一个配置文件,当需要新增帐套时,只要配置数据库名称,就会生成帐套对应的表,程序代码查询和操作表的语句对所有数据库都是通用的,这样实现了软件代码的灵活性,新增帐套是不用更改程序代码的。如果把不同帐套的表放在同一个数据库,需要建立不同的表名,新增新增一个帐套,就要新增跟原先不一样的表名,程序源代码需要修改,应该没有软件开发者想这样做的。
如果你的公司有几个账套,肯定每个账套中的数据表的名字都是一样的,只是数据库名字不一样而已。这样的好处是,你想要增加多少账套都只要复制整个数据库,清空后再起个新的名字就好了。而且针对数据库的编程也不需要改动太大,只要设定不同的连接数据库参数就好了。
空间当然也是个问题,会影响到数据库的备份体积和运行速度。
再有从条理性上请也要分的啊,硬盘还要分区呢,冰箱还要层呢,是不是?
可能用途不同,比如 DB1 访问量很小,而DB2访问量很大,这样就可以很容易的将两个数据库部署在性能不同的服务器上面,这也是一种情况