這樣好像一點都無益於你的程式開發。
從一個ROLE對應到另一個ROLE,再從基層的ROLE對應到具體的SECURITY,徒增開發難度。
還不如直接開出用戶,權限,ROLE,用戶-ROLE,用戶-權限,ROLE-權限表來得快和方便,如果你的權限控管足夠復雜的話。

解决方案 »

  1.   

    这样一来你只能有固定的角色,以后扩展你只能增加角色表,我觉的不太合理。这样:
    user(uid,name,...)
    role(rid,rolename,rp1,rp2,...)
    userrole(urid,uid,rid)
    这样以后增加角色或用户,或者变更角色属性,或变更用户属性,或者给用户赋予角色都很方便
      

  2.   

    XACZ:
    假设这里的Role1和Role2的属性完全不一样,不能放在一张role表中呢?比如role1是篮球运动员(投篮准确率,篮板,3分),role2是足球运动员(头球,射门,铲球).这种情况怎么处理比较好?misfans:
    这里的role并不是为了安全性,也许是我不该用role这个词。只不过是用户处于不同的角色,有许多不相关的数据需要存储,全部放在一张表中,列就会很多。
      

  3.   

    user(uid,name,...)
    role(role1id,userid,属性编号)
    属性表(属性编号,属性名)insert user(1,'aa')
    insert 属性表(1,'投篮准确率')
    insert 属性表(2,'篮板')
    insert 属性表(3,'头球')insert role(1,1,1)
    insert role(2,1,2)