⽤户,⾓⾊,权限配置表
设计基础:⽤户、⾓⾊、权限三⼤核⼼表,加上⽤户⾓⾊、⾓⾊权限两个映射表(⽤于给⽤户表联系上权限表)。这样就可以通过登录的
⽤户来获取权限列表,或判断是否拥有某个权限。
⼤致⽤到5张表:⽤户表(UrInfo)、⾓⾊表(RoleInfo)、菜单表(MenuInfo)、⽤户⾓⾊表(UrRole)、⾓⾊菜单表
(RoleMenu)。
各表的⼤体表结构如下:
1、⽤户表(UrInfo):Id、UrName、UrPwd
2、⾓⾊表(RoleInfo):Id、RoleName
3、菜单表(MenuInfo):Id、MenuName
4、⽤户⾓⾊表(UrRole):Id、UrId、RoleId
5、⾓⾊菜单表(RoleMenu):Id、RoleId、MenuId
最关键的地⽅是,某个⽤户登录时,如何查找该⽤户的菜单权限?其实⼀条语句即可搞定:
假如⽤户的⽤户名为Arthur,则他的菜单权限查询如下:
,mefromMenuInfom,UrInfou,UrRoleur,=and
==me='Arthur'
1、⽤户信息表:
1
2
3
4
5
6
7
8
9
10
11
12
createtableemployee
(
uridvarchar(50)notnull,--⽤户ID
urnamevarchar(100),--⽤户名
urpasswordvarchar(100),--密码
..
..
..
..
)
altertableemployee--主键
addconstraintpk_employee_uridprimarykey(urid)
2、⾓⾊表:
1
2
3
4
5
6
7
createtablerole
(
roleidvarchar(50)notnull,--⾓⾊Id
rolenamevarchar(100),--⾓⾊名称
)
altertabletole--主键
addconstraintpk_role_roleidprimarykey(roleid)
3、权限菜单表
1
2
3
createtablepopedom
(
popedomidintidentity(1,1)notnull,--权限Id
3
4
5
6
7
8
9
10
11
popedomidintidentity(1,1)notnull,--权限Id
popedomnamevarchar(100),--权限名称
popedomfatheridint,--权限⽗ID
popedomurlvarchar(100)--树的连接路径
..
..
)
ertablepopedom--主键
addconstraintPK_popedomprimarykey(popedomid)
添加数据如
inrtintopopedomvalues('我的办公桌',0,'')
inrtintopopedomvalues('电⼦邮箱',1,'../mail/')
(添加数据的原则是⼀级接点的popedomfatherid为0,如果是(我的办公桌)下⾯的接点,它们的popedomfatherid为(我的办公桌)的主键)
4、⽤户与⾓⾊关系表
1
2
3
4
5
6
7
8
createtableur_role
(
connectionidintidentity(1,1)notnull,--关系ID
uridvarchar(50)notnull,--管理员表ID
roleidvarchar(50)notnull--⾓⾊Id
)
altertableur_role--主键
addconstraintPK_admin_roleprimarykey(connectionid)
5、⾓⾊与权限关系表
1
2
3
4
5
6
7
8
9
createtablerole_popedom--⾓⾊与权限表
(
connectionidintidentity(1,1),--关系Id
roleidvarchar(50)notnull,--⾓⾊ID
popedomidintnotnull,--权限Id
popedomint--权限(1为可⽤,2为不可⽤)
)
altertablerole_popedom--主键
addconstraintPK_role_popedomprimarykey(connectionid)--主键
本文发布于:2023-03-01 09:06:34,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/167763279592487.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:配置表.doc
本文 PDF 下载地址:配置表.pdf
留言与评论(共有 0 条评论) |