有角色表t_role,角色与菜单中间表t_role_menu,菜单表t_menu,查询结果如下图!我想查询所有角色拥有的权限!角色与菜单表cid对应角色表的role_id,mid对应菜单表的id,菜单表一级菜单是0,二级菜单是pid,对应菜单表的id。不知道我这样描述能不能看的懂!
菜单表
CREATE TABLE `t_role_menu` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增ID',
`cid` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '角色ID',
`mid` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '菜单ID',
PRIMARY KEY (`id`),
UNIQUE KEY `cid` (`cid`,`mid`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=98 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
角色表
CREATE TABLE `t_role` (
`role_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增ID',
`role_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '角色名称',
`role_state` int(11) NOT NULL DEFAULT 0 COMMENT '角色状态',
PRIMARY KEY (`role_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
角色与菜单中间表
CREATE TABLE `t_role_menu` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增ID',
`cid` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '角色ID',
`mid` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT '菜单ID',
PRIMARY KEY (`id`),
UNIQUE KEY `cid` (`cid`,`mid`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=98 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;