智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

3.9 KiB

school_sys_user 表文档

表概述

表名: school_sys_user
功能: 系统用户管理表,用于存储和管理系统后台管理员的基本信息、登录状态、权限配置等核心数据。

字段说明

Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
uid	smallint unsigned	NULL	NO	PRI	NULL	auto_increment	select,insert,update,references	系统用户ID
username	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	用户账号
head_img	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	
password	varchar(100)	utf8mb4_general_ci	NO				select,insert,update,references	用户密码
real_name	varchar(16)	utf8mb4_general_ci	NO				select,insert,update,references	实际姓名
last_ip	varchar(50)	utf8mb4_general_ci	NO				select,insert,update,references	最后一次登录ip
last_time	int unsigned	NULL	NO		0		select,insert,update,references	最后一次登录时间
create_time	int unsigned	NULL	NO		0		select,insert,update,references	添加时间
login_count	int unsigned	NULL	NO		0		select,insert,update,references	登录次数
is_del	tinyint unsigned	NULL	NO		0		select,insert,update,references	
login_type	varchar(255)	utf8mb4_general_ci	YES		NULL		select,insert,update,references	登录类型
delete_time	int	NULL	NO		0		select,insert,update,references	删除时间
update_time	int	NULL	NO		0		select,insert,update,references	更新时间
status	tinyint unsigned	NULL	NO		1		select,insert,update,references	后台管理员状态 1有效0无效
role_ids	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	权限组
is_admin	tinyint	NULL	NO		0		select,insert,update,references	是否是管理员

功能用途

主要功能

  1. 用户身份管理: 存储管理员的基本身份信息(用户名、真实姓名、头像等)
  2. 登录认证: 管理用户密码、登录状态、登录历史
  3. 权限控制: 通过role_ids字段关联角色权限,支持多角色分配
  4. 安全审计: 记录登录IP、登录次数、最后登录时间等安全信息
  5. 状态管理: 支持用户启用/禁用、软删除等状态控制

业务场景

  • 系统管理员登录认证
  • 后台用户权限管理
  • 操作日志审计追踪
  • 用户状态监控
  • 多角色权限分配
  • 安全登录控制

关联关系

直接关联表

  1. school_sys_user_role: 通过uid字段关联用户角色关系
  2. school_sys_role: 通过role_ids字段关联角色信息
  3. school_sys_user_log: 通过uid字段关联用户操作日志

间接关联表

  1. school_sys_menu: 通过角色权限间接关联菜单权限
  2. school_campus: 可能通过业务逻辑关联校区管理权限
  3. 各业务表: 通过创建人、更新人字段关联

关联说明

  • uid字段作为主键,在多个表中作为外键引用
  • role_ids字段存储角色ID列表,与school_sys_role表形成多对多关系
  • username字段作为登录凭证,需要保证唯一性
  • 通过is_admin字段区分超级管理员和普通管理员

索引建议

  • 主键索引:uid(自动创建)
  • 唯一索引:username(登录账号唯一性)
  • 普通索引:status(按状态查询活跃用户)
  • 普通索引:is_del(软删除查询)
  • 复合索引:status + is_del(查询有效用户)
  • 普通索引:last_time(按最后登录时间排序)

注意事项

  1. 密码安全: password字段应使用强加密算法存储,不可明文保存
  2. 软删除: 使用is_del字段实现软删除,避免直接删除用户数据
  3. 角色权限: role_ids字段存储格式需要统一,建议使用JSON或逗号分隔
  4. 登录安全: 需要配合登录失败次数限制、IP白名单等安全机制
  5. 时间字段: 所有时间字段使用时间戳格式,注意时区处理
  6. 状态一致性: status和is_del字段需要保持逻辑一致性
  7. 超级管理员: is_admin=1的用户具有最高权限,需要严格控制