理清了物件關係之後,讓我們接著來進行資料庫的設計。在資料庫建模時,對於n對n的 關係,一般需要加入乙個關聯表來表示關聯的兩者的關係。初步估計一下,本系統至少需要十張表,分別為:許可權表、使用者表、角色表、組表、使用者許可權關聯表、用 戶角色關聯表、角色許可權關聯表、組許可權關聯表、組角色關聯表、使用者屬組關聯表。當然還可能引出一些相關的表。下面讓我們在powerdesigner中畫出各表吧。
各表及其關係如下:
1. 使用者表
使用者表(tuser)
欄位名稱
字段型別
備註記錄標識
tu_id
bigint
pk, not null
所屬組織
to_id
bigint
fk, not null
登入帳號
login_name
varchar(64)
not null
使用者密碼
password
varchar(64)
not null
使用者姓名
vsername
varchar(64)
not null
手機號mobile
varchar(20)
電子郵箱
varchar(64)
建立時間
gen_time
datetime
not null
登入時間
login_time
datetime
上次登入時間
last_login_time
datetime
登入次數
count
bigint
not null
2. 角色表
角色表(trole)
欄位名稱
字段型別
備註角色id
tr_id
bigint
pk, not null
父級角色id
parent_tr_id
bigint
not null
角色名稱
role_name
varchar(64)
not null
建立時間
gen_time
datetime
not null
角色描述
description
varchar(200)
3. 許可權表
許可權表(tright)
欄位名稱
字段型別
備註許可權id
tr_id
bigint
pk, not null
父許可權parent_tr_id
bigint
not null
許可權名稱
right_name
varchar(64)
not null
許可權描述
description
varchar(200)
4. 組表
組表(tgroup)
欄位名稱
字段型別
備註組id
tg_id
bigint
pk, not null
組名稱group_name
varchar(64)
not null
父組parent_tg_id
bigint
not null
建立時間
gen_time
datetime
not null
組描述description
varchar(200)
5. 角色許可權表
角色許可權表(trolerightrelation)
欄位名稱
字段型別
備註記錄標識
trr_id
bigint
pk, not null
角色role_id
bigint
fk, not null
許可權right_id
bigint
fk, not null
許可權型別
right_type
intnot null(0:可訪問,1:可授權)
6. 組許可權表
組許可權表(tgrouprightrelation)
欄位名稱
字段型別
備註記錄標識
tgr_id
bigint
pk, not null
組tg_id
bigint
fk, not null
許可權tr_id
bigint
fk, not null
許可權型別
right_type
intnot null(0:可訪問,1:可授權)
7. 組角色表
組角色表(tgrouprolerelation)
欄位名稱
字段型別
備註記錄標識
tgr_id
bigint
pk, not null
組tg_id
bigint
fk, not null
角色tr_id
bigint
pk, not null
8. 使用者許可權表
使用者許可權表(tuserrightrelation)
欄位名稱
字段型別
備註記錄標識
tur_id
bigint
pk, not null
使用者tu_id
bigint
fk, not null
許可權tr_id
bigint
fk, not null
許可權型別
right_type
intnot null(0:可訪問,1:可授權)
9. 使用者角色表
使用者角色表(tuserrolerelation)
欄位名稱
字段型別
備註記錄標識
tur_id
bigint
pk, not null
使用者tu_id
bigint
fk, not null
角色tr_id
bigint
fk, not null
10. 使用者組表
使用者組表(tusergrouprelation)
欄位名稱
字段型別
備註記錄標識
tug_id
bigint
pk, not null
使用者tu_id
bigint
fk, not null
組tg_id
bigint
fk, not null
11. 組織表
組織表(torganization)
欄位名稱
字段型別
備註組織id
to_id
bigint
pk, not null
父組parent_to_id
bigint
not null
組織名稱
org_name
varchar(64)
not null
建立時間
gen_time
datetime
not null
組織描述
description
varchar(200)
12. 操作日誌表
操作日誌表(tlog)
欄位名稱
字段型別
備註日誌id
log_id
bigint
pk, not null
操作型別
op_type
intnot null
操作內容
content
varchar(200)
not null
操作人tu_id
bigint
fk, not null
操作時間
gen_time
datetime
not null
通用許可權管理設計篇(二) 資料庫設計
理清了物件關係之後,讓我們接著來進行資料庫的設計。在資料庫建模時,對於n對n的 關係,一般需要加入乙個關聯表來表示關聯的兩者的關係。初步估計一下,本系統至少需要十張表,分別為 許可權表 使用者表 角色表 組表 使用者許可權關聯表 用 戶角色關聯表 角色許可權關聯表 組許可權關聯表 組角色關聯表 使用...
通用許可權管理設計篇(二) 資料庫設計
理清了物件關係之後,讓我們接著來進行資料庫的設計。在資料庫建模時,對於n對n的關係,一般需要加入乙個關聯表來表示關聯的兩者的關係。初步估計一下,本系統至少需要十張表,分別為 許可權表 使用者表 角色表 組表 使用者許可權關聯表 使用者角色關聯表 角色許可權關聯表 組許可權關聯表 組角色關聯表 使用者...
通用許可權管理設計篇(二) 資料庫設計
理清了物件關係之後,讓我們接著來進行資料庫的設計。在資料庫建模時,對於n對n的 關係,一般需要加入乙個關聯表來表示關聯的兩者的關係。初步估計一下,本系統至少需要十張表,分別為 許可權表 使用者表 角色表 組表 使用者許可權關聯表 用 戶角色關聯表 角色許可權關聯表 組許可權關聯表 組角色關聯表 使用...