🎉 新增功能 (New Features)
1. 数据导出功能 (Data Export Feature)
完整的表数据导出功能,支持多种格式和高级配置选项。
支持的格式:
- CSV - 支持自定义分隔符(逗号/分号/Tab)
- SQL INSERT - 可选包含 CREATE TABLE 语句
- JSON - 结构化 JSON 格式
配置选项:
- 导出范围:全部数据 或 限制条数(100/500/1000/5000/10000)
- 字段筛选:选择需要导出的列
- 条件过滤:支持 WHERE 条件筛选
- 文件编码:UTF-8 / GBK
入口:
- 表节点右键菜单 → 导出数据
- 查询结果工具栏 → 导出下拉菜单
实现文件:
src/components/ExportDataModal/- 导出配置弹窗组件src/blocks/Tree/functions/exportData.tsx- 右键菜单入口chat2db-server/.../TableDataExportRequest.java- 后端请求类chat2db-server/.../TaskBizService.java- 后端导出服务
2. 编辑器设置功能 (Editor Settings)
可自定义 Monaco 编辑器的外观和行为,设置持久化到 localStorage。
配置项:
- 字体大小 (Font Size)
- Tab 大小 (Tab Size)
- 字体类型 (Font Family) - Menlo / Consolas / Monaco / Courier New
- 行高 (Line Height)
- 自动换行 (Word Wrap)
- 显示缩略图 (Minimap)
- 代码折叠 (Code Folding)
- 自动闭合引号 (Auto Closing Quotes)
实现文件:
src/store/editor/index.ts- Zustand 状态存储src/blocks/Setting/EditorSetting/- 设置界面组件src/components/MonacoEditor/index.tsx- 编辑器集成
3. 智能SQL编辑器 (Intelligent SQL Editor)
增强的 SQL 编辑体验,提供智能辅助功能。
功能:
- 代码片段 (Code Snippets) - 快速插入常用 SQL 模板
- 语法检查 (Syntax Checker) - 实时 SQL 语法验证
- 智能排序 (Intelligent Sorting) - 按使用频率排序补全建议
- 关键字补全 (Keyword Completion)
- 表名/字段名补全 (Table/Column Completion)
实现文件:
src/utils/IntelliSense/- 智能提示核心模块snippet.ts- 代码片段syntaxChecker.ts- 语法检查usageTracker.ts- 使用频率追踪keyword.ts- 关键字补全table.ts- 表名补全field.ts- 字段名补全
4. 数据库分组功能 (Database Grouping)
支持将数据源分组管理,便于组织和查找。
功能:
- 创建/编辑/删除分组
- 移动数据源到分组
- 分组树形展示
实现文件:
src/pages/main/connection/components/GroupTree/- 分组树组件chat2db-server/.../DataSourceGroupController.java- 后端 API
5. 数据库结构导出 (Schema Export)
导出数据库表结构为 SQL 脚本。
功能:
- 支持导出单个表或整个数据库
- 可选包含数据
- 异步任务执行
实现文件:
src/blocks/Tree/functions/exportSchema.tsx- 前端入口chat2db-server/.../ExportController.java- 后端 API
6. 复制/清空表 (Copy/Truncate Table)
复制表:
- 复制表结构
- 可选复制数据
- 自定义新表名
清空表:
- 清空表中所有数据
- 二次确认提示
实现文件:
src/blocks/Tree/functions/copyTable.tsxsrc/blocks/Tree/functions/truncateTable.tsxchat2db-server/...- 后端 API
7. AI建表 (AI Table Creation)
使用 AI 智能生成表结构。
功能:
- 自然语言描述生成表结构
- AI 生成字段定义
- 一键执行创建
实现文件:
src/pages/main/ai-table/- AI 建表页面chat2db-server/...- 后端 AI 服务
🔧 技术改进 (Technical Improvements)
前端 (Frontend)
- 使用 Zustand 进行状态管理,支持 localStorage 持久化
- 采用 TypeScript 类型定义,提升代码质量
- 国际化支持(中文/英文)
后端 (Backend)
- 异步任务机制处理长时间导出操作
- RESTful API 设计
- 支持多种数据库类型
📝 文档更新 (Documentation)
- 更新 README.md 和 README_CN.md 功能对比表
- 新增功能对比分析文档
docs/local-edition-feature-comparison.md
📊 功能对比统计
| 类别 | 数量 |
|---|---|
| ✅ 已实现 | 11 个 |
| 3 个 | |
| ❌ 未实现 | 8 个 |
🔜 待实现功能 (Roadmap)
高优先级
- 打开运行 SQL 文件
- 复制结果为 Insert/Update
中优先级
- 自定义快捷键
- 生成代码(Java/Python Entity)
- 数据导入增强(CSV/Excel)
低优先级
- 数据结构同步
- 数据迁移
- AI 数据集
- Chat2Excel
🛠️ 开发环境
- 前端: React 18, UmiJS 4, Ant Design 5, Monaco Editor, Zustand
- 后端: Spring Boot 3.1, Java 17, MyBatis Plus
- 数据库: H2 (嵌入式), 支持 16+ 数据库类型
📦 安装运行
# 前端
cd chat2db-client
yarn install
yarn start:web
# 后端
cd chat2db-server
mvn clean install -DskipTests
java -jar -Dloader.path=./lib chat2db-server-start.jar感谢所有贡献者! 🙏