mysql 增加建表权限,mysql_基本权限模型建表结构

建表

由于咱们的系统比较简单且权限要求不台复杂,那么我们的表结构也没必要复杂了,就新建5个表就行了

1.用户表(user)

CREATE TABLE `user` (

`id` bigint(10) NOT NULL AUTO_INCREMENT COMMENT '主键',

`username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户名',

`password` varchar(50) NOT NULL COMMENT '密码',

`email` varchar(50) DEFAULT NULL COMMENT '邮箱',

`type` varchar(50) DEFAULT NULL,

`updatetim` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,

`regdate` datetime DEFAULT NULL,

`is_delete` int(10) NOT NULL DEFAULT '0',

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=280 DEFAULT CHARSET=utf8 COMMENT='用户表';

这里存放用户的基本信息,具体的什么信息可以根据自己要求来

77495b43401f?tdsourcetag=s_pcqq_aiomsg

user表

2.角色表或者叫组表(group)

这里要分几个组,自己定;比如普通成员、管理员

CREATE TABLE `tgroup` (

`tg_id` bigint(10) NOT NULL AUTO_INCREMENT COMMENT '组id',

`group_name` varchar(50) NOT NULL COMMENT '组名称',

`parent_tg_id` varchar(50) NOT NULL COMMENT '父组',

`description` varchar(200) DEFAULT NULL COMMENT '组描述',

`createtime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',

`is_delete` int(10) NOT NULL DEFAULT '0',

PRIMARY KEY (`tg_id`)

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='组表';

77495b43401f?tdsourcetag=s_pcqq_aiomsg

group表

3.用户角色关联表

规定用户是什么角色,就是做个关联

CREATE TABLE `tusergrouprelation` (

`tug_id` bigint(10) NOT NULL AUTO_INCREMENT COMMENT '用户组id',

`tu_id` bigint(10) NOT NULL COMMENT '用户id',

`tg_id` bigint(10) NOT NULL COMMENT '用户组id',

PRIMARY KEY (`tug_id`),

KEY `tu_id` (`tu_id`),

KEY `tg_id` (`tg_id`),

CONSTRAINT `tUserGroupRelation_ibfk_1` FOREIGN KEY (`tu_id`) REFERENCES `user` (`id`),

CONSTRAINT `tUserGroupRelation_ibfk_2` FOREIGN KEY (`tg_id`) REFERENCES `tgroup` (`tg_id`)

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='用户组表';

77495b43401f?tdsourcetag=s_pcqq_aiomsg

用户角色关联表

权限表

设置可发表权限,或者管理权限 ,也就是设置几个权限等级

CREATE TABLE `tright` (

`tr_id` bigint(10) NOT NULL AUTO_INCREMENT COMMENT '权限id',

`pargent_tr_id` bigint(10) NOT NULL COMMENT '父级权限id',

`right_name` varchar(50) NOT NULL COMMENT '权限名称',

`description` varchar(200) DEFAULT NULL COMMENT '权限描述',

`createtime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',

`is_delete` int(10) NOT NULL DEFAULT '0',

PRIMARY KEY (`tr_id`)

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='权限表';

77495b43401f?tdsourcetag=s_pcqq_aiomsg

权限表

5.角色组权限关联表

规定哪个角色拥有哪些权限

CREATE TABLE `tgroupRightRelation` (

`tgr_id` bigint(10) NOT NULL AUTO_INCREMENT COMMENT '记录标识id',

`tg_id` bigint(10) NOT NULL COMMENT '组id',

`tr_id` bigint(10) NOT NULL COMMENT '权限id',

`right_type` bigint(10) NOT NULL COMMENT '0:可访问,1:可授权',

PRIMARY KEY (`tgr_id`),

KEY `tr_id` (`tr_id`),

KEY `tg_id` (`tg_id`),

CONSTRAINT `tgroupRightRelation_ibfk_1` FOREIGN KEY (`tr_id`) REFERENCES `tright` (`tr_id`),

CONSTRAINT `tgroupRightRelation_ibfk_2` FOREIGN KEY (`tg_id`) REFERENCES `tgroup` (`tg_id`)

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='组权限表';

77495b43401f?tdsourcetag=s_pcqq_aiomsg

角色组权限关联表

@晴-2017-08-29 10:12:16

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值