本人  php技术小白,今天做rbac  以前接触的不是太多  于是便吧自己 今天做的整理一下

首先呢  创建五张表

2.1、用户表

CREATE TABLE t_user(
  user_id NUMBER(10) PRIMARY KEY,
  user_name VARCHAR2(30),
  gender NUMBER(1),
  birthday DATE,
  create_time DATE DEFAULT SYSDATE
);
COMMENT ON TABLE t_user IS '用户表';
COMMENT ON COLUMN t_user.user_id IS '用户ID';
COMMENT ON COLUMN t_user.user_name IS '用户姓名';
COMMENT ON COLUMN t_user.gender IS '性别{1男/0女}';
COMMENT ON COLUMN t_user.birthday IS '出生日期';
COMMENT ON COLUMN t_user.create_time '创建时间';

2.2、角色表

CREATE TABLE t_role(
  role_id NUMBER(10) PRIMARY KEY,
  role_name VARCHAR2(30),
  create_time DATE DEFAULT SYSDATE
);
COMMENT ON TABLE t_role IS '角色表';
COMMENT ON COLUMN t_role.role_id IS '角色ID';
COMMENT ON COLUMN t_role.role_name IS '角色名称';
COMMENT ON COLUMN t_role.create_time '创建时间';

2.3、权限表

CREATE TABLE t_power(
  power_id NUMBER(10) PRIMARY KEY,
 power_url varchar(30), power_name VARCHAR2(30), create_time DATE DEFAULT SYSDATE ); COMMENT ON TABLE t_power IS '权限表'; COMMENT ON COLUMN t_power.power_id IS '权限ID'; COMMENT ON COLUMN t_power.power_name IS '权限名称';
COMMENT ON COLUMN t_power.power_url IS '权限名称相对应的路径'; COMMENT ON COLUMN t_power.create_time '创建时间';

2.4、用户角色(关系)表

CREATE TABLE t_user_role(
  user_id NUMBER(10) NOT NULL,
  role_id NUMBER(10) NOT NULL ,
  create_time DATE DEFAULT SYSDATE
);
COMMENT ON TABLE t_user_role IS '用户角色(关系)表';
COMMENT ON COLUMN t_user_role.user_id IS '用户ID';
COMMENT ON COLUMN t_user_role.role_id IS '角色ID';
COMMENT ON COLUMN t_user_role.create_time '创建时间';

2.5、角色权限(关系)表

CREATE TABLE t_role_power(
  role_id NUMBER(10) NOT NULL,
  power_id NUMBER(10) NOT NULL
);
COMMENT ON TABLE t_role_power IS '角色权限(关系)表';
COMMENT ON COLUMN t_role_power.role_id IS '角色ID';
COMMENT ON COLUMN t_role_power.power_id IS '权限ID';
COMMENT ON COLUMN t_role_power.create_time '创建时间';
创建完以上几张表之后
进行登录的操作
登录存cookie或session根据name或id查询此用户的权限 然后根据对应权限展示对应信息
查询sql
select * from power //权限表表名
where power_id //权限表id
in(select power_id from role_power where role_id in (select role_id from user_role where user_id = 1))
还不完善,,后续改进


posted on 2018-01-23 13:32  朝☆闻★道  阅读(161)  评论(0编辑  收藏  举报