後台系統管理使用者許可權資料庫設計,後台系統管理使用者許可權
來自稜鏡學院-線上IT教育www.prismcollege.com
1. 建立基本表
建立User、Role和Module三張表,User中每一行對應一個使用者資訊,Role每一行儲存一個角色資訊,包括角色id及對應的name,Module中的每一行儲存一個模組資訊,包括模組id及對應的name。
建立三張表的sql語句(MySql環境)如下:
1)建立user表,表結構如下:
2)建立role表,表結構如下:
3)建立module表,表結構如下:
CREATE TABLE `of_user` (
`USER_ID` varchar(100) ',
`USERNAME` varchar(255),
`PASSWORD` varchar(255),
`NAME` varchar(255) ,
`ROLE_ID` varchar(100) ,
`NUMBER` varchar(100),
PRIMARY KEY (`USER_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
CREATE TABLE `of_role` (
`ROLE_ID` varchar(50) ,
`ROLE_NAME` varchar(100),
PRIMARY KEY (`ROLE_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `of_menu` (
`MENU_ID` int(11) NOT NULL,
`MENU_NAME` varchar(254) ,
`MENU_URL` varchar(254) ,
`PARENT_ID` varchar(20) ,
`MENU_ORDER` varchar(80),
`MENU_ICON` varchar(30),
PRIMARY KEY (`MENU_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `of_user_group` (
`id` varchar(50) ,
`user_id` varchar(50) ,
`group_id` varchar(50) ,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2. 插入初始資料
1)定義模組,假設有以下模組a.查詢報表 b.帳號管理 c.資訊發布 d.註冊使用者列表 e.招聘資訊列表幾個模組,將各模組插入module表中。
插入後module內容如下:
2)定義角色,初始定義以下角色a.超級管理員 b.管理員 c.資訊發行者 d.求職者等角色,插入後role內容如下:
3)定義使用者,初始使用者如下,liubei,zhugeliang,zhangfei,lvbu
插入後user內容如下
3. 建立關聯表
1)建立user和role的關聯表user_role,一個user對應一個或者多個role,一個role可以對應多個user,設liubei的角色為administrator,zhugeliang為admin和distributor,zhangfei為distributor,lvbu為jobseeker。使用者zhugeliang和role之間是一對多關聯性,角色distributor和user之間是一對多關聯性。
建立後的user_role表結構如下:
內容如下,儲存了使用者和角色之間的映射關係:
2)建立role和module之間的關聯映射表role_module,administrator可以查看journal_sheet模組,admin可以查看除journal_sheet的所有模組:info_distribute,account_manage,user_list,job_list,distributor可以查看info_distribute模組,jobseeker可以查看job_list模組。
建立後的role_module表結構如下:
內容如下,儲存了role和module之間的映射關係
CREATE TABLE `of_user_role` (
`user_id` int(50),
`role_id` int(50) ,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=urf-8;
CREATE TABLE `of_role_menu` (
`role_id` int(50) ,
`menu_id` int(50)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
至此,通過資料庫完成了使用者權限的設計。
更多學習 歡迎加QQ群交流:3686148499368614849368614849368614849