許可權管理資料表的設計
需要五張表,分別為(此處以mysql為例)
使用者表t_user
角色表t_role
許可權表t_permission
使用者角色表
t_user_rolet
角色許可權表
t_role_permission
使用者擁有什麼角色,這個角色擁有什麼許可權
使用者表(t_user)
create table `t_user` (
`uid` int(11) not null auto_increment,
`uname` varchar(10) not null,
`uage` tinyint(4) default null,
`uphone` int(11) default null,
`uaddress` varchar(20) default null,
`upwd` varchar(100) default null,
primary key (`uid`)
) engine=innodb auto_increment=25 default charset=utf8;
兩個使用者,user5為超級管理員擁有p1,p2許可權,user6為普通賬號,僅擁有p2許可權
角色表(t_role)
create table `t_role` (
`id` int(11) not null comment '角色id',
`role_name` varchar(255) not null comment '角色名',
`status` varchar(255) default null comment '角色狀態',
許可權表(t_permission)
create table `t_permission` (
`id` int(11) not null comment '許可權id',
`permission` varchar(255) not null comment '許可權',
`description` varchar(255) default null comment '許可權描述',
使用者角色表(t_user_rolet)
create table `t_user_role` (
`user_id` int(11) not null comment '使用者id',
`role_id` int(11) not null comment '角色id'
角色許可權表(t_role_permission)
create table `t_role_permission` (
`role_id` int(11) not null comment '角色id',
`permission_id` int(11) not null comment '許可權id'
查詢這個使用者擁有的許可權(查詢使用者id為5的使用者的許可權)
select
u.uid 使用者id ,
p.permission 許可權,
p.description 許可權描述
from
t_user u,
t_permission p,
t_user_role ur,
t_role_permission rp
where
u.uid = ur.user_id and
ur.role_id = rp.role_id and
rp.permission_id = p.id and
u.uid = 5
u.uid = ur.user_id and 使用者表的uid 要等於 使用者角色表的user_id
ur.role_id = rp.role_id and 使用者角色表的role_id 要等於 角色許可權表中的role_id
rp.permission_id = p.id and 角色許可權表中的permission_id 要等於 許可權表的 id
因為是從四張表中查詢資料,所以表之間要有個關聯條件
使用者表和使用者角色表關聯, 使用者角色表和角色許可權表關聯,角色許可權表和許可權表關聯
查詢出uid為5的許可權,有p1,p2許可權
查詢出user6的許可權,僅有乙個p2許可權
資料表設計
在進行完了資料調研 需求分析 技術實現方案,進行資料設計。資料設計,往往包含兩個環節 在本專案中,我們所有的資料設計環節,只會涉及第二個,不會涉及第乙個。因為我們為了突出課程重點,也就是spark。所以主要還是集中在spark上面,就不要花時間去做hive etl了。設計mysql中的業務表的結構。...
資料表設計
資料表設計 三大正規化 第一正規化 列的原子性,每一列是不可再拆分的 若是還要查詢省份或地區,則該錶有誤,不滿足第一正規化,則應 第二正規化 表裡面的每一列都應與主鍵有關 範例 品種列亂入不和主鍵有關係,不滿足第二正規化 科考,人員代號和科目代號為聯合主鍵,姓名雖與人員代號有關,但在成績表出來前人的...
28 5 4 資料表管理
在圖 28.59 的 主目錄 頁面中單擊 方案 鏈結,開啟如圖 28.67 所示的 方案 頁面。從 資料庫物件 列表中單擊 表 鏈結,即可進入 表管理 頁面,如圖 28.68 所示。圖28.67 方案 頁面 圖28.68 表管理 頁面 1 建立資料表 在oem 中建立資料表的步驟如下所示。1 在圖2...