Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions plugins/sql-utils/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
.DS_Store
node_modules
dist
package-lock.json
.qoderignore


# local env files
.env.local
.env.*.local

# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*

# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
235 changes: 235 additions & 0 deletions plugins/sql-utils/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,235 @@
# Changelog

本文件记录版本变更历史。

## [1.0.28]

### 优化

- Excel转SQL:
- 支持上传Excel文件解析数据
- 支持字段配置(将空字符串在SQL中转为NULL)
- 数据表格支持拖拽排序
- 生成测试数据:
- 数据表格添加分页,减少页面卡顿

## [1.0.27]

### 优化

- 生成测试数据:
- 身份证号优化行政区划生成逻辑,增强真实性
- 随机字符生成保证包含已选字符源,支持自定义标点符号

## [1.0.26]

### 优化

- 代码生成:优化注释特殊字符转义处理逻辑

## [1.0.25]

### 优化

- 生成测试数据:
- 优化拖拽功能,拖拽列调整顺序后,字段配置区域顺序同步更新
- 优化复制逻辑,复制结果与页面表格的列,顺序保持一致

## [1.0.24]

### 优化

- 文本拼接:优化部分样式
- 代码生成:
- 优化模版底层
- 优化部分样式

## [1.0.23]

### 优化

- 代码生成:优化页面交互方式

## [1.0.22]

### 优化

- 代码生成:新增模板导入、导出功能

## [1.0.21]

### 优化

- 文本拼接:优化uTools搜索框匹配方式

### 修复

- 代码生成:修复模板加载失败问题

## [1.0.20]

### 优化

- 生成测试数据:新增 [分布式ID字段]
- 代码生成:优化模板加载逻辑

## [1.0.19]

### 新增

- 代码生成:
- 支持 数据库 与 Java 数据类型的映射配置
- 支持包名、作者等生成信息的配置
- 新增了几种文件模板
- 支持自定义模板

## [1.0.18]

### 优化

- 生成测试数据:优化编码类型的生成逻辑

## [1.0.17]

### 优化

- 文本拼接:
- 新增[去空行]按钮
- 支持自行选择和自定义拼接字符

## [1.0.16]

### 修复

- 生成测试数据:修复部分样式问题

## [1.0.15]

### 优化

- 文本拼接:移除了冗余的"复制"按钮,操作后自动复制结果,简化操作路径
- 生成测试数据:界面布局重构,字段配置与数据预览分离,使字段管理更专注,结果查看更直观

## [1.0.14]

### 新增

- 文本拼接:英文逗号拼接支持切换单行或多行模式

### 优化

- 界面UI:优化部分样式

## [1.0.13]

### 优化

- 生成测试数据:日期字段支持选择日期、日期时间两种类型

## [1.0.12]

### 优化

- 生成测试数据:表格列支持拖拽排序

## [1.0.11]

### 优化

- 优化部分样式
- 文本拼接:支持转为JSON
- 生成测试数据:添加数据类型:UUID、随机字符

## [1.0.10]

### 修复

- 修复部分bug

### 优化

- 优化部分样式

## [1.0.9]

### 新增

- 新增"代码生成"功能

### 优化

- 优化整体样式

## [1.0.8]

### 优化

- 自动适配深色模式
- 优化部分样式

## [1.0.7]

### 优化

- 支持深色模式

## [1.0.6]

### 优化

- 生成测试数据:
- 优化UI布局。字段类型区域添加展开与收起功能
- 添加数据类型。时间戳、文字、信用代码

## [1.0.5]

### 优化

- 生成测试数据:
- 优化UI布局,字段类型分类展示
- 添加数据类型:
- [数据] 枚举
- [人] 性别
- [地理] 省份、城市、区县、地址
- [商业] 公司名称、商品品类、货币代码
- [网络] ip地址、网址、密码、emoji

## [1.0.4]

### 优化

- 编码生成:功能合并至生成测试数据
- 生成测试数据:
- 支持新字段类型:编码、头像、商品名、商品标题
- 图片、头像,支持预览

## [1.0.3]

### 新增

- 生成测试数据:快速批量生成测试数据,可直接复制为sql语句、json格式

## [1.0.2]

### 新增

- 文本拼接:支持用英文逗号拼接
- ID、Code生成:支持按指定数量生成

## [1.0.1]

### 优化

- 优化部分页面样式
- 文本拼接:支持内容撤回

### 新增

- ID、Code生成:可自定义前缀、后缀、长度快速生成ID、Code

## [1.0.0]

### 新增

- 文本拼接:为多行文本前后添加引号,并用逗号连接
- Excel转SQL:快速将excel表格转换为insert、update语句
132 changes: 132 additions & 0 deletions plugins/sql-utils/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
# 🛠️ SQL 工具箱 🧰

一款集成了多种 SQL 相关的实用工具🧰,帮助开发者提高工作效率🚀。

## 🚀 功能特性

### 1️⃣ 文本拼接工具 🧵
将多行文本快速拼接为 SQL 的 IN 条件语句,支持多种引号和分隔符格式。

![文本拼接.png](效果图/文本拼接.png)

**主要功能✨:**
- 🧹 去重和去空行
- 🔤 单引号/双引号包裹
- 🎯 自定义分隔符(逗号、竖线、顿号等)
- 📦 JSON 格式转换
- ↔️ 单行/多行模式切换

### 2️⃣ Excel 转 SQL 📊
快速将 Excel 表格数据转换为 INSERT 和 UPDATE SQL 语句。

![excel转sql.png](效果图/excel转sql.png)

**支持的操作⚙️:**
- ➕ 自动生成 INSERT 语句
- ✏️ 自动生成 UPDATE 语句
- 📝 自定义表名和主键
- 👁️ 数据预览和验证

### 3️⃣ 测试数据生成器 🎲
批量生成各种类型的测试数据,支持多种输出格式。

![生成测试数据](效果图/生成测试数据1.png)
![生成测试数据](效果图/生成测试数据2.png)

**支持的数据类型📊:**

- **常规类型🔢:** 编码、整数、小数、日期、时间戳、枚举、文字、UUID、随机字符、分布式ID

- **人员信息👤:** 姓名、身份证、手机号、邮箱

- **地理位置📍:** 省份、城市、区县、地址

- **图像资源🖼️:** 随机图片、用户头像

- **网络信息🌐:** IP 地址、网址、密码、Emoji

- **商业数据💼:** 公司名称、商品品类、商品名、商品标题、货币代码、信用代码

**输出格式📤:**
- 📊 表格数据预览
- 📝 制表符分隔值 (TVS)
- 📜 SQL INSERT 语句
- 📦 JSON 格式

### 4️⃣ 代码生成器 💻
根据 SQL DDL 建表语句自动生成相应的代码模板。

![代码生成1](效果图/代码生成1.png)
![代码生成2](效果图/代码生成2.png)
![代码生成3](效果图/代码生成3.png)
![代码生成4](效果图/代码生成4.png)
![代码生成5](效果图/代码生成5.png)

**支持的模板类型📋:**
- ☕ Java Entity 实体类
- 🧭 MyBatis Mapper 接口
- 📄 Mapper XML 文件
- ⚙️ Java Service 服务类
- 🎮 Controller 控制器

**核心特性💎:**
- 👁️ 可视化 DDL 解析
- 🔄 字段类型智能映射
- 🎨 模板自定义和管理
- 📦 包名和作者配置
- 🔧 Lombok 和 Swagger 注解支持

## 🛠 技术栈

- **前端框架:** Vue.js 2.7
- **UI 组件库:** Element UI、VXE Table
- **代码编辑器:** CodeMirror
- **模板引擎:** Handlebars.js
- **数据模拟:** Faker.js (@faker-js/faker)
- **日期处理:** Day.js
- **SQL 解析:** sql-ddl-to-json-schema
- **构建工具:** Vue CLI

## 🔧 开发环境搭建

```bash
# 克隆项目
git clone <repository-url>

# 进入项目目录
cd sql-utils

# 安装依赖
npm install

# 启动开发服务器
npm run serve

# 构建生产版本
npm run build
```

## 📦 依赖说明

主要的第三方库和工具:

- [@faker-js/faker](https://github.com/faker-js/faker) - 生成各种模拟数据
- [dayjs](https://day.js.org/) - 日期时间处理库
- [sql-ddl-to-json-schema](https://github.com/Luidog/sql-ddl-to-json-schema) - SQL DDL 解析工具
- [vue-codemirror](https://github.surmon.me/vue-codemirror/) - 代码编辑器组件
- [handlebars](https://handlebarsjs.com/) - 模板引擎
- [element-ui](https://element.eleme.io/) - Vue.js UI 组件库
- [vxe-table](https://vxetable.cn/) - 表格组件

## 📝 待开发功能

- Excel转SQL 新增功能
- 支持导入文件的方式解析数据

## 🤝 贡献指南

欢迎提交 Issue 和 Pull Request 来帮助改进这个项目。

## 📄 许可证

[MIT License](LICENSE)
Loading