3张表实现RBAC
管理员表
CREATE TABLE cqh_admin
(
id smallint unsigned not null auto_increment comment 'id',
username varchar(30) not null comment '用户名',
password char(32) not null comment '密码',
salt char(6) not null comment '随机生成6位字符',
role_id mediumint unsigned not null default '0' comment '角色的id',
primary key (id),
key (role_id)
) engine=MyISAM default charset=utf8 comment '管理员';
INSERT INTO cqh_admin VALUES(1,'admin','69eef864983c4f9af8fada82c0a9d89a','cqh123',1);
权限表
CREATE TABLE cqh_privilege
(
id mediumint unsigned not null auto_increment comment 'id',
pri_name varchar(30) not null comment '权限名称',
module_name varchar(30) not null comment '对应的模块名',
controller_name varchar(30) not null comment '对应的控制器名',
action_name varchar(30) not null comment'对应的方法名',
parent_id mediumint unsigned not null default '0' comment '上级权限的id',
primary key (id)
)engine=MyISAM default charset=utf8 comment '权限';
角色表
CREATE TABLE cqh_role
(
id mediumint unsigned not null auto_increment comment 'id',
role_name varchar(30) not null comment '角色名称',
pri_id varchar(1500) not null default '' comment '权限的ID,如果有多个权限就用,隔开,如1,3,4',
primary key (id)
)engine=MyISAM default charset=utf8 comment '角色';
INSERT INTO cqh_role VALUES(1,'超级管理员','*');
3张表实现RBAC的更多相关文章
- MySQL实现两张表数据的同步
有两张表A和B,要求往A里面插入一条记录的同时要向B里面也插入一条记录,向B里面插入一条记录的同时也向A插入一条记录.两张表的结构不同,需要将其中几个字段对应起来.可以用下面的触发器实现. 表A的触发 ...
- 将一张表的数据,拷贝到另一张表中sql
两张表的字段一样 create table 目标表 as select * from 原表;
- (转载)详解网络传输中的三张表,MAC地址表、ARP缓存表以及路由表
郑重声明:原文转载于http://dengqi.blog.51cto.com/5685776/1223132 向好文章致敬!!! 一:MAC地址表详解 说到MAC地址表,就不得不说一下交换机的工作原理 ...
- Azure SQL Database (21) 将整张表都迁移到Azure Stretch Database里
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- 在SqlServer2008R2中,在一张表上加上insert、update、delete触发器(带游标)
在日常工作中,在SqlServer2008R2中,需要向一张表上加上触发器,监控插入.更新.删除. --一个触发器内三种INSERT,UPDATE,DELETE状态 IF exists(select ...
- 十几张表的join(千万级/百万级表) 7hours-->5mins
================START============================== 来了一个mail说是job跑得很慢,调查下原因 先来看下sql: SELECT h.order_ ...
- iptables4张表5条链
4张表:filter nat mangle raw filter:协议过滤: nat:地址转换,端口映射等: mangle:协议修改 TTL等: raw:This table is used m ...
- 级联两个bootstrap-table。一张表显示相关的数据,通过点击这张表的某一行,传过去对应的ID,刷新另外一张表。
二张表的代码(我用的插件,大家可以去网上直接下载http://issues.wenzhixin.net.cn/bootstrap-table/): <div class="contai ...
- 不同数据库中同一张表的SQL循环修改语句
select sample_value,Sample_GUID,row_number() over(order by sample_value )as rownumber into #AATemp ...
随机推荐
- for循环,列表,元组
依旧是python基础 for循环 s = 'woeudbwieb' for i in s:#s代表可迭代对象 print(i) if 'c' not in s: print('没有c') 列表 每个 ...
- 《笨方法学Python》加分题15
本题本题开始涉及文件的操作,文件操作是一件危险的事情,需要仔细细心否则可能导致重要的文件损坏. 本题除了 ex15.py 这个脚本以外,还需要一个用来读取的文件 ex15_sample.txt 其内容 ...
- 13. pt-ioprofile
pt-ioprofile 直接运行即可,对系统有影响,慎用!!! read:从文件中读出数据.要读取的文件用文件描述符标识,数据读入一个事先定义好的缓冲区. write:把缓冲区的数据写入文件中. p ...
- java多线程系列14 设计模式 Master-Worker
Master-Worker模式是常用的并行设计模式,可以将大任务划分为小任务,是一种分而治之的设计理念. 系统由两个角色组成,Master和Worker,Master负责接收和分配任务,Worker负 ...
- 标准时间转YYYY-MMM-DD
// 时间处理 formatDate(date, fmt) { let o = { 'M+': date.getMonth() + 1, //月份 'd+': date.getDate(), //日 ...
- selenium_unittest基本框架
from selenium import webdriver import unittest import time #创建类引入unitest.testcase用例库 class BaiDu_tes ...
- 工具SQL
1.数据库设计文档维护SQL SELECT COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度, ...
- 说说Runnable与Callable
Callable接口: public interface Callable<V> { V call() throws Exception; } Runnable接口: public int ...
- 下单快发货慢:一个 JOIN SQL 引起 SqlClient 读取数据慢的奇特问题
最近遇到一个非常奇特的问题,在一个 ASP.NET Core 项目中从 SQL Server 2008 R2 中查询获取 100 条记录竟然耗时 10 多秒,如果是查询本身慢,那到不是什么奇特的问题. ...
- Android NDK学习(三):Hello World
版权声明:转载请说明出处:http://www.cnblogs.com/renhui/p/6925810.html 首先编写Jni接口的c文件,此文件命名有些特殊,具体的命名方式可以参考文档来做. # ...