文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>通用权限管理设计篇(二)——数据库设计

通用权限管理设计篇(二)——数据库设计

时间:2010-10-08  来源:mayibug

理清了对象关系之后,让我们接着来进行数据库的设计。在数据库建模时,对于N对N的关系,一般需要加入一个关联表来表示关联的两者的关系。初步估计一下,本系统至少需要十张表,分别为:权限表、用户表、角色表、组表、用户权限关联表、用户角色关联表、角色权限关联表、组权限关联表、组角色关联表、用户属组关联表。当然还可能引出一些相关的表。下面让我们在PowerDesigner中画出各表吧。

       各表及其关系如下:

1.       用户表

用户表(TUser)

字段名称

字段

类型

备注

记录标识

tu_id

bigint

pk, not null

所属组织

to_id

bigint

fk, not null

登录帐号

login_name

varchar(64)

not null

用户密码

password

varchar(64)

not null

用户姓名

vsername

varchar(64)

not null

手机号

mobile

varchar(20)


电子邮箱

email

varchar(64)


创建时间

gen_time

datetime

not null

登录时间

login_time

datetime


上次登录时间

last_login_time

datetime


登录次数

count

bigint

not null

2.       角色表

角色表(TRole)

字段名称

字段

类型

备注

角色ID

tr_id

bigint

pk, not null

父级角色ID

parent_tr_id

bigint

not null

角色名称

role_name

varchar(64)

not null

创建时间

gen_time

datetime

not null

角色描述

description

varchar(200)


3.       权限表

权限表(TRight)

字段名称

字段

类型

备注

权限ID

tr_id

bigint

pk, not null

父权限

parent_tr_id

bigint

not null

权限名称

right_name

varchar(64)

not null

权限描述

description

varchar(200)


4.       组表

组表(TGroup)

字段名称

字段

类型

备注

组ID

tg_id

bigint

pk, not null

组名称

group_name

varchar(64)

not null

父组

parent_tg_id

bigint

not null

创建时间

gen_time

datetime

not null

组描述

description

varchar(200)


5.       角色权限表

角色权限表(TRoleRightRelation)

字段名称

字段

类型

备注

记录标识

trr_id

bigint

pk, not null

角色

Role_id

bigint

fk, not null

权限

right_id

bigint

fk, not null

权限类型

right_type

int

not null(0:可访问,1:可授权)

6.       组权限表

组权限表(TGroupRightRelation)

字段名称

字段

类型

备注

记录标识

tgr_id

bigint

pk, not null

tg_id

bigint

fk, not null

权限

tr_id

bigint

fk, not null

权限类型

right_type

int

not null(0:可访问,1:可授权)

7.       组角色表

组角色表(TGroupRoleRelation)

字段名称

字段

类型

备注

记录标识

tgr_id

bigint

pk, not null

tg_id

bigint

fk, not null

角色

tr_id

bigint

pk, not null

8.       用户权限表

用户权限表(TUserRightRelation)

字段名称

字段

类型

备注

记录标识

tur_id

bigint

pk, not null

用户

tu_id

bigint

fk, not null

权限

tr_id

bigint

fk, not null

权限类型

right_type

int

not null(0:可访问,1:可授权)

9.       用户角色表

用户角色表(TUserRoleRelation)

字段名称

字段

类型

备注

记录标识

tur_id

bigint

pk, not null

用户

tu_id

bigint

fk, not null

角色

tr_id

bigint

fk, not null

10.   用户组表

用户组表(TUserGroupRelation)

字段名称

字段

类型

备注

记录标识

tug_id

bigint

pk, not null

用户

tu_id

bigint

fk, not null

tg_id

bigint

fk, not null

11.   组织表

组织表(TOrganization)

字段名称

字段

类型

备注

组织id

to_id

bigint

pk, not null

父组

parent_to_id

bigint

not null

组织名称

org_name

varchar(64)

not null

创建时间

gen_time

datetime

not null

组织描述

description

varchar(200)


12.   操作日志表

操作日志表(TLog)

字段名称

字段

类型

备注

日志ID

log_id

bigint

pk, not null

操作类型

op_type

int

not null

操作内容

content

varchar(200)

not null

操作人

tu_id

bigint

fk, not null

操作时间

gen_time

datetime

not null

posted on 2007-10-06 09:37 阿蜜果 阅读(7588) 评论(37)  编辑  收藏 所属分类: Open Source
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载