後台系統管理使用者許可權資料庫設計,後台系統管理使用者許可權

來源:互聯網
上載者:User

後台系統管理使用者許可權資料庫設計,後台系統管理使用者許可權

來自稜鏡學院-線上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

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.