# school_sys_dict 表文档 ## 表概述 **表名**: school_sys_dict **功能**: 系统字典管理表,用于存储和管理系统中的各类字典数据,提供统一的数据字典服务,支持动态配置和维护系统中的枚举值、选项列表等基础数据 ## 字段说明 ``` Field Type Collation Null Key Default Extra Privileges Comment id int unsigned NULL NO PRI NULL auto_increment select,insert,update,references id name varchar(50) utf8mb4_general_ci NO select,insert,update,references 字典名称 key varchar(100) utf8mb4_general_ci NO select,insert,update,references 字典关键词 dictionary text utf8mb4_general_ci NO NULL select,insert,update,references 字典数据 memo varchar(255) utf8mb4_general_ci NO select,insert,update,references create_time int NULL NO 0 select,insert,update,references 创建时间 update_time int NULL NO 0 select,insert,update,references 更新时间 ``` ## 功能用途 ### 主要功能 - **字典数据管理**: 统一管理系统中的各类字典数据和枚举值 - **动态配置**: 支持运行时动态修改字典数据,无需重启系统 - **分类管理**: 通过key字段对字典进行分类和标识 - **数据存储**: 使用JSON格式存储复杂的字典数据结构 - **备注说明**: 提供memo字段记录字典的用途和说明 - **版本控制**: 通过时间字段跟踪字典数据的创建和更新历史 ### 业务场景 - **下拉选项**: 为前端页面提供下拉框、单选框等选项数据 - **状态枚举**: 定义各种业务状态的枚举值(如订单状态、用户状态等) - **分类数据**: 管理课程分类、人员类型、支付方式等分类信息 - **配置参数**: 存储系统配置参数和业务规则配置 - **地区数据**: 管理省市区等地理位置信息 - **权限配置**: 定义角色权限、菜单权限等权限相关数据 - **多语言支持**: 存储多语言环境下的文本翻译数据 - **业务规则**: 配置各种业务流程的规则和参数 ## 关联关系 ### 主要关联表 - **school_sys_config**: 系统配置表,可能引用字典数据 - **school_member**: 会员表,可能使用字典定义的状态和类型 - **school_course**: 课程表,可能使用字典定义的分类和状态 - **school_personnel**: 人员表,可能使用字典定义的职位和类型 - **school_pay**: 支付表,可能使用字典定义的支付方式和状态 - **school_sys_menu**: 菜单表,可能使用字典定义的菜单类型 ### 关联说明 - 字典表为其他业务表提供标准化的枚举值和选项数据 - 通过key字段建立逻辑关联,业务表通过字典key获取对应的字典数据 - 支持一对多关系,一个字典可以被多个业务表引用 - 字典数据的变更会影响引用该字典的所有业务功能 ## 索引建议 ```sql -- 主键索引(自动创建) PRIMARY KEY (id) -- 字典关键词唯一索引(用于快速查找字典) UNIQUE INDEX idx_key (key) -- 字典名称索引(用于按名称搜索) INDEX idx_name (name) -- 创建时间索引(用于按时间排序) INDEX idx_create_time (create_time) -- 更新时间索引(用于查询最近更新的字典) INDEX idx_update_time (update_time) ``` ## 注意事项 - **数据一致性**: 修改字典数据时需要考虑对引用该字典的业务功能的影响 - **缓存策略**: 字典数据访问频繁,建议使用缓存提高性能 - **数据格式**: dictionary字段存储JSON数据,需要确保数据格式的正确性 - **键值唯一性**: key字段应保持唯一性,避免字典冲突 - **版本管理**: 重要字典的修改应记录版本历史,支持回滚操作 - **权限控制**: 字典数据的修改应有严格的权限控制 - **数据备份**: 定期备份字典数据,防止数据丢失 - **性能优化**: 大量字典数据时需要考虑查询性能优化 - **数据验证**: 字典数据的格式和内容需要进行严格验证 - **国际化**: 支持多语言环境时需要考虑字典数据的国际化处理