Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: TonQiang/Chat2DB

0.3.8

04 Apr 07:16
@TonQiang TonQiang

Choose a tag to compare

🎉 新增功能 (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.tsx
  • src/blocks/Tree/functions/truncateTable.tsx
  • chat2db-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

感谢所有贡献者! 🙏

Assets 2
Loading

AltStyle によって変換されたページ (->オリジナル) /