说明   超级管理员的权限最高   可以操作所有的功能   !!!      超级管理员给特定的用户分配对应的权限

下文注解:   用户表 关联 用户组表  每个用户组对应特定的功能权限    !!

用户表

CREATE TABLE `osa_user` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(50) NOT NULL,
`password` varchar(255) NOT NULL,
`real_name` varchar(255) NOT NULL,
`mobile` varchar(20) NOT NULL,
`email` varchar(255) NOT NULL,
`user_desc` varchar(255) DEFAULT NULL,
`login_time` int(11) DEFAULT NULL COMMENT '登录时间',
`status` tinyint(4) NOT NULL DEFAULT '1',
`login_ip` varchar(32) DEFAULT NULL,
`user_group` int(11) NOT NULL,       #对应的用户组
`template` varchar(32) NOT NULL DEFAULT 'default' COMMENT '主题模板',
`shortcuts` text COMMENT '快捷菜单',
`show_quicknote` int(11) NOT NULL DEFAULT '1' COMMENT '是否显示quicknote',
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_name` (`user_name`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COMMENT='后台用户'

用户组

CREATE TABLE `osa_user_group` (
`group_id` int(11) NOT NULL AUTO_INCREMENT,
`group_name` varchar(32) DEFAULT NULL,
`group_role` text CHARACTER SET utf8 COLLATE utf8_unicode_ci COMMENT '初始权限为1,5,17,18,22,23,24,25',   #用户组对应的功能列表
`owner_id` int(11) DEFAULT NULL COMMENT '创建人ID',
`group_desc` varchar(64) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`group_id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='账号组'

用户组下的功能

CREATE TABLE `osa_menu_url` (
`menu_id` int(11) NOT NULL AUTO_INCREMENT,
`menu_name` varchar(50) NOT NULL,
`menu_url` varchar(255) NOT NULL,
`module_id` int(11) NOT NULL,
`is_show` tinyint(4) NOT NULL COMMENT '是否在sidebar里出现',
`online` int(11) NOT NULL DEFAULT '1' COMMENT '在线状态,还是下线状态,即可用,不可用。',
`shortcut_allowed` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '是否允许快捷访问',
`menu_desc` varchar(255) DEFAULT NULL,
`father_menu` int(11) NOT NULL DEFAULT '0' COMMENT '上一级菜单',
PRIMARY KEY (`menu_id`),
UNIQUE KEY `menu_url` (`menu_url`)
) ENGINE=InnoDB AUTO_INCREMENT=104 DEFAULT CHARSET=utf8 COMMENT='功能链接(菜单链接)'

php 后台权限例子 (mysql 数据表)的更多相关文章

  1. mysql数据表增删改查

    http://www.runoob.com/mysql/mysql-tutorial.html 一.MySQL 创建数据表 创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以 ...

  2. MySql数据表设计,索引优化,SQL优化,其他数据库

    MySql数据表设计,索引优化,SQL优化,其他数据库 1.数据表设计 1.1数据类型 1.2避免空值 1.3text类型优化 2.索引优化 2.1索引分类 2.2索引优化 3.SQL优化 3.1分批 ...

  3. MYSQL数据表损坏的原因分析和修复方法小结

    MYSQL数据表损坏的原因分析和修复方法小结 1.表损坏的原因分析 以下原因是导致mysql 表毁坏的常见原因: 1. 服务器突然断电导致数据文件损坏. 2. 强制关机,没有先关闭mysql 服务. ...

  4. 用Myisamchk让MySQL数据表更健康

    用Myisamchk让MySQL数据表更健康 2011-03-15 09:15 水太深 ITPUB 字号:T | T 为了让MySQL数据库中的数据表“更健康”,就需要对其进行定期体检.在这里笔者推荐 ...

  5. 随机获取Mysql数据表的一条或多条记录

    随机获得Mysql数据表的一条或多条记录有很多方法,下面我就以users(userId,userName,password......)表(有一百多万条记录)为例,对比讲解下几个方法效率问题: sel ...

  6. (转)MySQL数据表中带LIKE的字符匹配查询

    MySQL数据表中带LIKE的字符匹配查询 2014年07月15日09:56    百科369 MySQL数据表中带LIKE的字符匹配查询 LIKE关键字可以匹配字符串是否相等. 如果字段的值与指定的 ...

  7. MySQL 数据表修复及数据恢复

    1. MYSQL数据表在什么情况下容易损坏? 服务器突然断电导致数据文件损坏. 强制关机,没有先关闭mysql 服务等.   2. 数据表损坏后的主要现象是什么? 从表中选择数据之时,得到如下错误:I ...

  8. 设置MySQL数据表主键

    设置MySQL数据表主键: 使用“primary key”关键字创建主键数据列.被设置为主键列不允许出现重复的值,很多情况下与“auto_increment”递增数字相结合.如下SQL语句所示: My ...

  9. 谈谈MySQL数据表的类型(转)

    谈谈MySQL数据表的类型 通常意义上,数据库也就是数据的集合,具体到计算机上数据库可以是存储器上一些文件的集合或者一些内存数据的集合. 我们通常说的MySql数据库,sql server数据库等等其 ...

  10. MySQL 数据表操作

    MySQL 数据表操作 创建MySQL数据表需要以下信息: -表名: -表字段名: -定义每个表字段: 一.创建数据表 1)mysql> create  table  table_name (c ...

随机推荐

  1. ActiveMQ in Action(4) - Security

    关键字: activemq 2.4 Security    ActiveMQ支持可插拔的安全机制,用以在不同的provider之间切换.2.4.1 Simple Authentication Plug ...

  2. Excel教程(2) - 函数的参数

    函数右边括号中的部分称为参数,假如一个函数可以使用 多个参数,那么参数与参数之间使用半角逗号进行分隔.参数 可以是常量(数字和文本).逻辑值(例如 TRUE 或 FALSE).数 组.错误值(例如#N ...

  3. table边框1px

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. 五笔拼音反查精灵 v6.69 绿色版

    软件名称:五笔拼音反查精灵 v6.69 绿色版软件语言: 简体中文授权方式: 免费软件应用平台: Win7 / Vista / Win2003 / WinXP / Win2008 软件大小: 197K ...

  5. 执行 npm run update-webdriver 提示文件不能获取错误

    按照angularjs官网的入门教程中输入 npm run update-webdriver  总是提示 https://chromedriver.storage.googleapis.com/2.1 ...

  6. js 总结累计大全

    1选择  select  获取val text   更改其他class值 <script type="text/javascript"> $(function(){ $ ...

  7. 工作线程基类TaskSvc

    工作线程基类TaskSvc 前端时间用ACE写代码,发ACE_Task确实好用.不但能提供数量一定的线程,还能够让这些继承的线程函数自由访问子类的private和protected变量.此外,ACE_ ...

  8. JavaScript(7)——事件2.0

    事件 [事件类型] 不同的事件类型具有不同的信息. [UI事件] 指的是那些不一定与用户操作有关的事件.当用户与页面上的元素交互时触发. load事件:当页面完全加载后,就会 触发window 上面的 ...

  9. nmon 安装

    安装: mkdir /usr/local/nmon cd /usr/local/nmon wget http://sourceforge.net/projects/nmon/files/nmon_li ...

  10. Android makefile 组织结构

    下面是main.mk文件包含关系,本文档主要说明的就是这些文件里到底做了什么.(这个文件被根目录下的makefile文件包含) 一.     main.mk BUILD_SYSTEM=build/co ...