MySQL是一種用于管理關(guān)系數(shù)據(jù)庫的開源數(shù)據(jù)庫管理系統(tǒng)。在使用MySQL時,用戶需要授予不同級別的權(quán)限以便于進行管理。因此,在MySQL中,我們需要設(shè)計三級權(quán)限表以區(qū)分不同用戶的權(quán)限等級。
CREATE TABLE tb_privilege ( privilege_id INT(11) PRIMARY KEY AUTO_INCREMENT, privilege_name VARCHAR(50) NOT NULL ); CREATE TABLE tb_role ( role_id INT(11) PRIMARY KEY AUTO_INCREMENT, role_name VARCHAR(50) NOT NULL ); CREATE TABLE tb_user ( user_id INT(11) PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) NOT NULL, password VARCHAR(50) NOT NULL, role_id INT(11) NOT NULL, FOREIGN KEY (role_id) REFERENCES tb_role(role_id) ); CREATE TABLE tb_perm ( perm_id INT(11) PRIMARY KEY AUTO_INCREMENT, perm_name VARCHAR(50) NOT NULL, privilege_id INT(11) NOT NULL, FOREIGN KEY (privilege_id) REFERENCES tb_privilege(privilege_id) ); CREATE TABLE tb_role_perm ( role_id INT(11) NOT NULL, perm_id INT(11) NOT NULL, PRIMARY KEY (role_id, perm_id), FOREIGN KEY (role_id) REFERENCES tb_role(role_id), FOREIGN KEY (perm_id) REFERENCES tb_perm(perm_id) ); CREATE TABLE tb_user_perm ( user_id INT(11) NOT NULL, perm_id INT(11) NOT NULL, PRIMARY KEY (user_id, perm_id), FOREIGN KEY (user_id) REFERENCES tb_user(user_id), FOREIGN KEY (perm_id) REFERENCES tb_perm(perm_id) );
以上代碼實現(xiàn)了三級權(quán)限表設(shè)計,分別是privilege,role和perm。其中,privilege是權(quán)限表,用于存儲權(quán)限級別,包括管理員、普通用戶等等;role是角色表,用于存儲角色名稱,如管理員、教師、學(xué)生等等;perm是權(quán)限表,用于存儲具體權(quán)限,如增加、刪除、修改等。然后,定義了一個role_perm中間表用于建立角色和權(quán)限之間的多對多關(guān)系,以及一個user_perm中間表用于建立用戶和權(quán)限之間的多對多關(guān)系。
通過以上MySQL的三級權(quán)限表設(shè)計,我們可以在實際應(yīng)用中方便地管理和授權(quán)用戶的個別角色和權(quán)限。
下一篇各種手機css像素