前言:对数据库知识回顾,创建数据库、创建表、主键约束、外键约束、表关系(多对多)。

一、表描述
一张用户表,一张角色表,一张权限表。一个用户对应多个角色,一个角色对应多个用户同时对应多个权限,一个权限可以对应多个角色。

以下为Sql语句:


-- 创建数据库
CREATE DATABASE day19hometest;-- 切换到指定数据库
USE day19hometest;-- 创建用户表
CREATE TABLE `user`(uid INT PRIMARY KEY AUTO_INCREMENT,username VARCHAR(20),`password` VARCHAR(20)
);
-- 创建角色表
CREATE TABLE role(rid INT PRIMARY KEY AUTO_INCREMENT,rname VARCHAR(20)
);-- 创建用户与角色关联表
CREATE TABLE user_role(u_uid INT,u_rid INT
);/*
一个用户对应多个角色,一个角色对应多个用户*/
-- 添加外键约束
ALTER TABLE user_role ADD CONSTRAINT fk_u_rid FOREIGN KEY(u_rid) REFERENCES `user`(uid);ALTER TABLE user_role ADD CONSTRAINT fk_u_uid FOREIGN KEY(u_uid) REFERENCES role(rid);-- 为用户表插入数据
INSERT INTO `user` VALUE
(NULL,'大家都说名字长不会被发现','ccc12345'),
(NULL,'都说名字长不会被发现','xxx12345'),
(NULL,'名字好长好像不容易被发现','zzz12345');
-- 为角色表中插入数据
INSERT INTO role VALUE
(NULL,'用户'),
(NULL,'会员用户'),
(NULL,'超级会员用户');-- 测试关联表
INSERT INTO user_role VALUE
(1,3);-- 正确信息INSERT INTO user_role VALUE (1,4);-- 错误信息-- 增加权限表
CREATE TABLE privilege(pid INT PRIMARY KEY AUTO_INCREMENT,pdescription VARCHAR(50)
);-- 为权限表添加数据
INSERT INTO privilege VALUE
(NULL,'普通学习资料'),
(NULL,'付费学习资料'),
(NULL,'超级会员特有付费学习资料');-- 创建角色与权限关联表
CREATE TABLE role_pri(r_p_rid INT,r_p_pid INT
);
/*
一个角色
*/
-- 添加外键约束
ALTER TABLE role_pri ADD CONSTRAINT fk_r_p_rid FOREIGN KEY (r_p_rid) REFERENCES role(rid);
ALTER TABLE role_pri ADD CONSTRAINT fk_r_p_pid FOREIGN KEY (r_p_pid) REFERENCES privilege(pid);-- 测试关联表
INSERT INTO role_pri VALUE (1,3); -- 正确信息
INSERT INT role_pei VALUE (1,4);-- 错误信息

二、架构设计图

MySql练习 多对多表练习-用户角色权限表相关推荐

  1. mysql 用户角色权限表建立

    建表sql [sql] view plaincopy #创建表使用的数据库 use springmvc; #权限表 create table authoritys( id_ smallint unsi ...

  2. Java论坛系统--3.系统用户角色权限表结构设计

    通常我们的网站都有权限控制,就像一个公司有产品.开发.运维之分,各自负责各自的业务,相互独立,有相互协作,共同完成一个任务.拥有不同权限的用户查看不同的页面,进行不同的操作. Shiro是一种轻量级的 ...

  3. 用户·角色·权限·表的设计

    设计一个灵活.通用.方便的权限管理系统. 在这个系统中,我们需要对系统的所有资源进行权限控制,那么系统中的资源包括哪些呢?我们可以把这些资源简单概括为静态资源(功能操作.数据列)和动态资源(数据),也 ...

  4. Web开发中的用户角色权限设计总结

    在Web开发中关于权限管理设计大抵涉及到两个方面:一:功能方面权限设计:二:资源方面权限设计.二者比较来看,功能方面权限的可重用性更高. 1.关于权限: 按照角色权限的最简单的设计 名称 描述 用户 ...

  5. Mysql —— C语言链接mysql数据库,用户 角色 权限(用户根据角色的不同拥有增删改查的权限、用户有三种认证方式)

    db_修改过(用户 角色 权限): 1.新增用户时候id 改为最大id值加一,之前用的select查看出来的记录数加一,删除后再增加会出错: 2.删除用户时候,若该用户创建过其他用户(不能改此用户名. ...

  6. Oracle数据库用户角色、表空间创建、删除命令

    Oracle数据库用户角色.表空间创建.删除命令 //创建数据表空间 create tablespace BCC datafile 'D:\oracle\oradata\BCC\BCC.dbf' si ...

  7. 管理系统的用户角色权限

    目录 RBAC1模型: RBAC2模型: RBAC3模型: RBAC0模型实现 用户.角色.权限表关系的设计(mysql) 业务逻辑思路 RBAC0模型: 这是权限最基础也是最核心的模型,它包括用户/ ...

  8. RBAC用户角色权限设计方案

    RBAC用户角色权限设计方案 转自http://www.cnblogs.com/zwq194/archive/2011/03/07/1974821.html RBAC(Role-Based Acces ...

  9. 【深度解析RBAC用户-角色-权限设计方案,以及核心逻辑代码的讲解】

    首先对于b2b.b2c等这一些网站后台,一般情况下都需要权限管理的设计与实现,对于这部分,通常是固定不变的,每次只需要做少量的改动即可. 如何设计这几张表呢? RBAC(基于角色的访问控制),也就是用 ...

最新文章

  1. python代码翻译-python实现在线翻译
  2. python爬虫百度图片_python实现爬取百度图片的方法示例
  3. EmbarassedBirds全体开发人员落泪
  4. 计算机组成原理尾数的求法,计算机组成原理第八讲(运算办法).ppt
  5. 使用Bartend提取K3领料数据以实现发料包装标识批量自动打印
  6. 手机android系统界面,Android 4.0系统,界面很原生
  7. 2021-2022 AI工程师薪水趋势:美国、印度、加拿大等
  8. php源码旅行网站模板,背包客旅行扁平网站模板
  9. 驾照考试之科目三(深圳东周版)
  10. 阿里云张新涛:支持沉浸式体验应用快速落地,阿里云云XR平台发布
  11. python列表推导式去除m3u8中的广告视频地址下载视频
  12. 打开计算机用户策略,打开组策略,详细教您电脑组策略怎么打开
  13. 【医学图像处理】CT成像技术之CT剂量
  14. CodeVS 1003 电话连线
  15. 宜信容器云排错工具集
  16. ccf-星际旅行(80分)
  17. 神经网络泛化的能力因素,神经网络泛化的能力差
  18. Pulsesensor、MQ-2学习笔记
  19. 游戏微服务架构设计:etcd
  20. 免费的jpg转pdf转换器

热门文章

  1. SAP会计凭证相关表
  2. QT简单的视频播放器
  3. frp内网穿透——配置windows客户端
  4. Java-Mail监听新邮件
  5. 破解HLS低延时的密匙: HLS+技术解密(一)
  6. java jndi jboss_jboss中的jndi问题__InitialContext_lookup_java_test_NamingContext__169IT.COM
  7. 两台电脑连接交换机通信
  8. android 常用布局组件,Android六大基本布局
  9. (黑马程序员)MongoDB + Express + art-template 项目实例-博客管理系统 第一页
  10. mysql replication 重连_MySQL Replication 需要注意的问题