管理系统经典权限设计MySql

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
-- 经典管理系统权限设计
-- 需要五个表
-- 用户表Sys_User 
-- 角色表Sys_Role 
-- 权限表Sys_Power 
-- 角色权限关联表(1:N)Sys_RolePower
-- 用户角色关联表(1:N)Sys_UserRole
-- 用户表存储用户信息
-- 角色表存储角色信息
-- 权限表存储权限信息
-- 用户角色权限关联表存储角色对应的权限信息
-- 用户 角色 权限 可以单独新增,角色可以关联多个用户,可以关联多个权限
-- 也就是说用户可以通过关联不同的角色来适配不同的权限
-- 此结构权限可以细分到每个页面的每个按钮增删改查按钮
 
 
select  * from Sys_Users su ;
select  * from Sys_Role sr ;
select  * from Sys_UserRole;
select  * from Sys_RolePower;
select  * from Sys_Power ;
 
 
-- Sys_Users 用户表结构
 
CREATE TABLE `Sys_Users` (
  `UserID` varchar(50) NOT NULL COMMENT '用户账号',
  `UserName` varchar(100) NOT NULL COMMENT '用户名称',
  `NickName` varchar(50) DEFAULT NULL COMMENT '用户昵称',
  `Email` varchar(100) DEFAULT NULL COMMENT '邮箱',
  `Password` varchar(50) NOT NULL COMMENT '密码',
  `Sex` varchar(10) NOT NULL COMMENT '性别',
  `AvatarUrl` varchar(200) DEFAULT NULL COMMENT '头像地址',
  `QQ` varchar(50) DEFAULT NULL COMMENT 'QQ',
  `Phone` varchar(50) DEFAULT NULL COMMENT '手机号码',
  `ProvinceID` varchar(10) DEFAULT NULL COMMENT '用户所在省份编码',
  `Province` varchar(50) DEFAULT NULL COMMENT '用户所在省份',
  `CityID` varchar(10) DEFAULT NULL COMMENT '用户所在城市编码',
  `City` varchar(50) DEFAULT NULL COMMENT '用户所在城市',
  `CountyID` varchar(10) DEFAULT NULL COMMENT '用户所在县/区编码',
  `County` varchar(50) DEFAULT NULL COMMENT '用户所在县/区',
  `Address` text COMMENT '地址',
  `Remark` text COMMENT '备注',
  `IdentityCard` varchar(50) DEFAULT NULL COMMENT '身份证',
  `Birthday` datetime DEFAULT NULL COMMENT '生日',
  `LastLoginTime` datetime DEFAULT NULL COMMENT '上次登录时间',
  `Enabled` bit(1) NOT NULL DEFAULT b'1' COMMENT '是否启用',
  `OneSession` bit(1) NOT NULL DEFAULT b'0' COMMENT '单用户模式',
  `CreateTime` datetime NOT NULL COMMENT '创建时间',
  `UpdateTime` datetime NOT NULL COMMENT '最后更新时间',
  `CreateID` varchar(50) NOT NULL COMMENT '创建人编码',
  `CreateName` varchar(100) NOT NULL COMMENT '创建人',
  `UpdateID` varchar(50) NOT NULL COMMENT '更新人编码',
  `UpdateName` varchar(100) NOT NULL COMMENT '更新人',
  `Administrator` bit(1) NOT NULL DEFAULT b'0' COMMENT '超级管理员',
  PRIMARY KEY (`UserID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='用户管理'-- Sys_Role 角色表结构
 
CREATE TABLE `Sys_Role` (
  `ID` varchar(36) NOT NULL COMMENT 'ID',
  `Name` varchar(50) NOT NULL COMMENT '角色名称',
  `Remark` varchar(100) DEFAULT NULL COMMENT '备注',
  `CreateTime` datetime NOT NULL COMMENT '创建时间',
  `UpdateTime` datetime NOT NULL COMMENT '最后更新时间',
  `CreateID` varchar(50) NOT NULL COMMENT '创建人编码',
  `CreateName` varchar(100) NOT NULL COMMENT '创建人',
  `UpdateID` varchar(50) NOT NULL COMMENT '更新人编码',
  `UpdateName` varchar(100) NOT NULL COMMENT '更新人',
  `Administrator` bit(1) NOT NULL COMMENT '超级管理员可见',
  PRIMARY KEY (`ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='角色定义'
-- Sys_UserRole 用户角色关联表结构
CREATE TABLE `Sys_UserRole` (
  `ID` varchar(36) NOT NULL COMMENT 'UUID',
  `UserID` varchar(50) NOT NULL COMMENT '用户ID',
  `RoleID` varchar(36) NOT NULL COMMENT '角色ID',
  PRIMARY KEY (`ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='用户角色'
-- Sys_RolePower 角色权限关联表结构
CREATE TABLE `Sys_RolePower` (
  `ID` varchar(36) NOT NULL COMMENT 'UUID',
  `RoleUID` varchar(36) NOT NULL COMMENT '角色ID',
  `PowerUID` varchar(36) NOT NULL COMMENT '权限ID',
  PRIMARY KEY (`ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='角色权限'
-- Sys_Power 权限表结构
 
CREATE TABLE `Sys_Power` (
  `ID` varchar(36) NOT NULL COMMENT 'UUID',
  `Name` varchar(50) NOT NULL COMMENT '权限标识',
  `Page` varchar(50) NOT NULL COMMENT '系统页面',
  `Description` varchar(50) NOT NULL COMMENT '权限描述',
  `Remark` varchar(100) DEFAULT NULL COMMENT '备注',
  `CreateTime` datetime NOT NULL COMMENT '创建时间',
  `UpdateTime` datetime NOT NULL COMMENT '最后更新时间',
  `CreateID` varchar(50) NOT NULL COMMENT '创建人编码',
  `CreateName` varchar(100) NOT NULL COMMENT '创建人',
  `UpdateID` varchar(50) NOT NULL COMMENT '更新人编码',
  `UpdateName` varchar(100) NOT NULL COMMENT '更新人',
  PRIMARY KEY (`ID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='权限定义'

 

 


 

 


 

 

  

posted @   互联网CV工程师  阅读(110)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示