大侠们,向你们请教一个问题:数据库 表设计:一用户多帐户表设计。
系统中一用户可以有 多帐户(不同类型的帐户:广告、新闻等不同类型的帐户),这里应该怎么设计呢?是放到一张表中,通过一个type字段来区分,还是设计 多张表来处理呢?还望大侠们根据自己的工作经历来说说 那种设计更合理,扩展性更好。多谢!

解决方案 »

  1.   

    多个表吧。
    虽然看起来表多了比较烦,但实际管理的时候却跟明了。
    在建表的时候一个表中用来管理用户-账户用。
    其他表用来管理账户的具体信息。
    管理账户具体信息的表可以与管理用户-账户使用Forein key
      

  2.   

    如果各类型帐户之间在数据结构上没有差异,建议还是一个表,通过TYPE等类区别为好
    数据量大了在基于TYPE做分区以前碰到过一个项目,分用户、年度建立数据库用户,每个用户下再建一套类似的表结构,几年下来(每年都有几百个用户),使得对系统表的操作相当慢(数据量并不大,合计不超过1000万条记录)