这是一个更优的问题,一个系统要那些表,表结构该怎样,我们大部分时间都是现实了功能即可,很少想怎样设计才是最优的,行业的经验是怎样的,都没有一个定数。
查看了一些金蝶、行业OA产品的数据字典,还是发现一些问题,例如部门表中直接设计了一个部门经理字段,那副经理那些呢?这些明显的不合理也出现在我们耳熟能详的大厂商产品里面。
查找了很多书,很少大神写这方面的书,欢迎大家讨论这方面的问题。
例如:人员、部门、职位、角色、权限(功能权限和数据权限)的表设计问题。
 

解决方案 »

  1.   

    讨论的范围比较大,这样很难有什么结论。 所有的数据库设计或者软件设计都是针对某个问题的。 比如 在 部门表 中设计了经理字段。 楼主针对这个设计主要的顾虑是什么? 比如SAP中根本没有部门表,只有一个 组织构架表 ,然后是对应的 position 表,人员表。 或者楼主认为这种设计有何优缺点。
      

  2.   


    大神说到SAP的数据库设计,倒给我一个很好的启发。我讨论这个问题,就是希望在某一个相对密闭的场景中,找到更灵活设计的数据库结构,或者说适用性更好的设计。就例如组织、职位、和人员的关系,这种设计我觉得是在OA系统等相对较好的设计方式。
    另外还有几个场景,比如工作流审批,系统中数据权限的设计,功能权限的设计等。
    主要讨论这些基础场景和典型的数据库设计。
      

  3.   

    追问个问题,SAP的那种表结构设置,如果比较高层的组织要列出员工,是不是要递归出这个组织下面所有子组织,再把挂在这些子组织的人员筛选出来。
    还是有其他设计方法可以简化解决这种问题场景?