# MySQL数据库Web管理系统 **Repository Path**: hcoldice/dbmanage ## Basic Information - **Project Name**: MySQL数据库Web管理系统 - **Description**: 本系统是一个基于Flask框架开发的MySQL数据库Web管理工具,提供了直观的用户界面,允许用户通过浏览器完成数据库、表和数据的全生命周期管理,无需直接编写SQL语句。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-06 - **Last Updated**: 2025-12-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MySQL数据库Web管理系统 一个基于Flask框架开发的MySQL数据库Web管理工具,提供直观的用户界面,允许用户通过浏览器完成数据库、表和数据的全生命周期管理,无需直接编写SQL语句。 ## 1. 系统概述 本系统是一个基于Flask框架开发的MySQL数据库Web管理工具,提供了直观的用户界面,允许用户通过浏览器完成数据库、表和数据的全生命周期管理,无需直接编写SQL语句。 ### 主要功能特点: - 数据库连接与管理 - 数据表创建、修改与删除 - 表数据的增删改查操作 - 自定义枚举类型管理 - 友好的Web界面,支持响应式设计 - 完整的权限管理(基于数据库用户权限) ## 2. 技术架构 ### 2.1 后端技术 - **框架**:Flask(Python Web框架) - **数据库驱动**:MySQL Connector/Python - **模板引擎**:Jinja2 ### 2.2 前端技术 - **HTML5/CSS3**:页面结构与样式 - **JavaScript**:客户端交互逻辑 - **Bootstrap**:基础UI组件与响应式设计 ### 2.3 系统架构 ``` ┌─────────────────────────┐ │ Web浏览器客户端 │ └─────────────────────────┘ │ HTTP请求/响应 ┌─────────────────────────┐ │ Flask Web服务器 │ ├─────────────────────────┤ │ 路由处理 │ 模板渲染 │ └─────────────────────────┘ │ 数据库操作 ┌─────────────────────────┐ │ MySQL数据库服务器 │ └─────────────────────────┘ ``` ## 3. 功能模块详细说明 ### 3.1 数据库连接与管理 #### 3.1.1 数据库连接 - 用户通过首页输入数据库连接信息(主机、端口、用户名、密码) - 支持连接到指定数据库或查看所有可用数据库 #### 3.1.2 数据库列表 - 显示MySQL服务器上所有可用的数据库 - 提供连接到指定数据库的功能 #### 3.1.3 数据库创建 - 支持创建新的数据库 - 可设置数据库的字符集和排序规则 ### 3.2 数据表管理 #### 3.2.1 表列表 - 显示当前数据库中所有的数据表 - 提供查看表结构、查看表数据、创建新表等功能入口 #### 3.2.2 表创建 - 支持定义表名和字段信息 - 支持多种数据类型:INT、VARCHAR、TEXT、DATE、DATETIME、FLOAT、DOUBLE、BOOLEAN、ENUM - 支持设置字段约束:NOT NULL、UNIQUE、PRIMARY KEY、AUTO_INCREMENT - 支持设置默认值 #### 3.2.3 表结构查看 - 显示表的详细结构信息,包括字段名、类型、约束、默认值等 - 提供表创建的SQL语句展示 #### 3.2.4 表结构修改 - **添加新列**:支持添加新的字段,可选择数据类型和约束 - **修改列类型**:支持修改现有字段的数据类型 - **修改列约束**:支持修改字段的NULL约束 - **移动列位置**:支持调整字段在表中的顺序 - **删除列**:支持删除表中的字段 ### 3.3 数据管理 #### 3.3.1 数据查看 - 以表格形式展示表中的所有数据 - 支持分页显示(根据数据量自动调整) #### 3.3.2 数据添加 - 提供表单用于添加新的记录 - 自动跳过自增字段 - 支持根据字段类型进行数据验证 #### 3.3.3 数据编辑 - 支持编辑现有记录 - 主键字段不可修改 - 提供表单用于输入新值 #### 3.3.4 数据删除 - 支持单条数据删除 - 支持批量删除选中的数据 - 删除前提供确认提示 ### 3.4 枚举类型管理 #### 3.4.1 枚举类型列表 - 显示所有自定义枚举类型 - 提供编辑和删除功能 #### 3.4.2 枚举类型创建 - 支持创建自定义枚举类型 - 可定义枚举名称和枚举值列表 - 至少需要两个枚举值 #### 3.4.3 枚举类型编辑 - 支持修改枚举类型的名称和值列表 #### 3.4.4 枚举类型删除 - 支持删除不再需要的枚举类型 - 删除前提供确认提示 ## 4. 使用流程 ### 4.1 数据库连接 1. 打开系统首页 2. 输入数据库连接信息(主机、端口、用户名、密码) 3. 点击"查询"按钮 4. 选择要连接的数据库 ### 4.2 创建数据表 1. 连接到目标数据库 2. 点击"创建新表"按钮 3. 输入表名和字段信息 4. 设置字段类型、长度、约束等 5. 点击"创建表"按钮 ### 4.3 管理表数据 1. 连接到目标数据库 2. 在表列表中选择要操作的表 3. 点击"查看表数据"按钮 4. 可选择"增加数据"、"编辑数据"或"删除选中数据" ### 4.4 修改表结构 1. 连接到目标数据库 2. 在表列表中选择要操作的表 3. 点击"查看表结构"按钮 4. 点击"修改表结构"按钮 5. 可进行添加列、修改列类型、移动列位置或删除列操作 ### 4.5 管理枚举类型 1. 连接到目标数据库 2. 在表结构修改页面点击"管理枚举类型"链接 3. 可进行创建、编辑或删除枚举类型操作 ## 5. 系统界面 ### 5.1 首页 - 数据库连接表单 - 简洁的登录界面 ### 5.2 数据库列表页 - 显示所有可用数据库 - 提供连接数据库按钮 ### 5.3 表列表页 - 显示当前数据库中的所有表 - 提供表操作功能入口 ### 5.4 表数据页 - 表格形式展示数据 - 提供数据操作按钮 ### 5.5 表结构页 - 显示表的详细结构 - 提供表结构修改功能 ### 5.6 枚举管理页 - 显示所有枚举类型 - 提供枚举类型操作功能 ## 6. 技术实现细节 ### 6.1 路由设计 - `/`: 系统首页,数据库连接表单 - `/query`: 处理数据库连接请求 - `/list_tables`: 显示数据库中的表列表 - `/create_table`: 表创建页面和处理 - `/view_table_structure`: 查看表结构 - `/modify_table_structure`: 修改表结构 - `/view_table_data`: 查看表数据 - `/add_table_data`: 添加表数据 - `/edit_table_data`: 编辑表数据 - `/delete_table_data`: 删除表数据 - `/enum_management`: 枚举类型管理 ### 6.2 数据类型支持 系统支持以下MySQL数据类型: - 整数类型:INT - 字符串类型:VARCHAR、TEXT - 日期时间类型:DATE、DATETIME - 数值类型:FLOAT、DOUBLE - 布尔类型:BOOLEAN(映射到tinyint(1)) - 枚举类型:ENUM(支持自定义枚举值) ### 6.3 安全性考虑 - 密码在表单中以隐藏字段传递 - 删除操作前提供确认提示 - 数据库操作基于登录用户的权限 ## 7. 部署与运行 ### 7.1 环境要求 - Python 3.6+ - Flask 2.0+ - MySQL Connector/Python ### 7.2 安装依赖 ```bash pip install flask mysql-connector-python ``` ### 7.3 运行系统 ```bash python app.py ``` 系统将在http://localhost:8080上运行 ## 8. 总结 本系统提供了一个功能完整、界面友好的MySQL数据库Web管理工具,适合开发人员和管理员使用。系统支持数据库、表和数据的全生命周期管理,并提供了自定义枚举类型的管理功能,大大简化了数据库管理工作。 系统采用了模块化的设计,代码结构清晰,易于维护和扩展。通过Web界面操作数据库,降低了使用门槛,提高了工作效率。 ## 9. 如何贡献 欢迎对本项目进行贡献!如果您有任何改进建议或发现了bug,请: 1. Fork本仓库 2. 创建您的特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交您的更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开一个Pull Request ## 10. 许可证 本项目采用MIT许可证 - 查看 [LICENSE](LICENSE) 文件了解详情 ## 11. 联系方式 如有问题或建议,欢迎通过以下方式联系: - 项目地址:[Gitee仓库地址](待添加) - 问题反馈:在Gitee仓库中提交Issue ## 12. 更新日志 ### v1.0.0 (2023-xx-xx) - 初始版本发布 - 实现数据库连接与管理功能 - 实现数据表创建、修改与删除功能 - 实现表数据的增删改查操作 - 实现自定义枚举类型管理功能