-- 创建角色权限关联表
-- 作者: 王志维
-- 创建时间: 2026-04-30

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- 角色权限关联表
DROP TABLE IF EXISTS `sys_role_permission`;
CREATE TABLE `sys_role_permission` (
  `permission_id` BIGINT(20) NOT NULL COMMENT '权限主键ID，关联权限主表主键',
  `role_id` BIGINT(20) NOT NULL COMMENT '角色主键ID，关联角色主表主键',
  `role_code` VARCHAR(64) NOT NULL COMMENT '角色标识码，如student、teacher、school_admin',
  `permission_code` VARCHAR(128) NOT NULL COMMENT '接口/按钮权限码，如system:user:add',
  `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '权限绑定关系创建时间',
  `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '权限绑定关系最后更新时间',
  PRIMARY KEY (`permission_id`, `role_id`),
  KEY `idx_role_id` (`role_id`),
  KEY `idx_role_code` (`role_code`),
  KEY `idx_permission_code` (`permission_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色权限关联表';

SET FOREIGN_KEY_CHECKS = 1;