夜雨聆风学习资料网

ARTICLE · 1037153

CSDN发布文档

CSDN发布文档

【开源】Web 端 SQL 定时任务调度平台,支持多数据库 + SQL 安全审核,Spring Boot + Vue3 前后端一体化开箱即用

代码仓库:https://gitee.com/qq1362610708_qq_com/sql-executor


一、项目介绍

SQL Executor 是一个类 Navicat 的 Web 端 SQL 执行器,支持多数据库连接管理、SQL 编写与执行、定时任务调度、任务审核、数据表结构设计等功能。

采用前后端一体化架构,无需 npm、无需前端构建工具,下载后直接运行就能用。


二、功能特性

1. 多数据库支持

  • 应用自身存储支持:MySQL / PostgreSQL / Oracle / SQL Server / H2(五选一)
  • 用户连接的目标数据库支持:MySQL / PostgreSQL / Oracle / SQL Server

2. SQL 编辑器

  • 在线编写并执行 SQL 语句,支持多条语句分号分隔执行
  • 代码智能提示:关键字 / 表名 / 列名自动补全
  • SQL 美化 / 压缩
  • 代码折叠 + 缩进参考线,复杂 SQL 层级一目了然

3. 定时任务调度

  • 基于 Quartz 的定时调度,支持一次性任务和 Cron 周期任务
  • 任务需经审核人审核通过后方可执行
  • 支持启用 / 禁用 / 立即执行

4. SQL 安全审核

  • SQL 危险等级自动评估
    :安全(绿色)/ 警告(黄色)/ 危险(橙色)/ 极危(红色)
  • 绿色以上点击"通过"必须二次确认
  • 极危操作必须高级审核员执行
  • 自动检测 SQL 注入攻击(UNION SELECT、堆叠查询等)

5. 权限体系

  • 29 项细粒度权限控制
    ,覆盖 8 大权限组
  • 页面级 + 按钮级 + 接口级三层防护
  • 角色管理 + 用户管理 + 连接权限分配

6. 数据表设计

  • 浏览数据库表结构,查看字段名、类型、长度、注释等
  • 在线修改表结构(添加/修改/删除字段)

7. 执行历史

  • 记录所有 SQL 执行日志
  • 服务端分页、关键字搜索
  • 查看执行详情(完整 SQL 和结果摘要)

三、技术栈

层级
技术
后端框架
Spring Boot 3.2.5 + JDK 21
持久化
Spring Data JPA + Hibernate
应用数据库
MySQL / PostgreSQL / Oracle / SQL Server / H2(五选一)
定时调度
Quartz(JDBC 存储 / 内存存储)
认证
JWT(jjwt 0.12.5)
前端
纯 HTML + Vue 3 CDN + Element Plus CDN
构建
Maven(无需 npm / 无需前端构建工具)

四、快速开始

环境要求

  • JDK 21+
  • Maven 3.8+
  • 数据库(任选其一,或使用 H2 免安装模式)

1. 克隆项目

git clone https://gitee.com/qq1362610708_qq_com/sql-executor.gitcd sql-executor

2. 配置数据库

推荐使用 H2 本地文件数据库(无需安装任何数据库,开箱即用):

编辑 src/main/resources/application.yml

spring:  profiles:    active: h2

或者使用 MySQL:

spring:  profiles:    active: mysql# 修改 mysql profile 的连接信息# datasource:#   url: jdbc:mysql://localhost:3306/sql_executor?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&createDatabaseIfNotExist=true#   username: root#   password: your_password

3. 启动应用

mvn spring-boot:run

也可通过启动参数指定数据库类型和端口:

# 使用 H2 数据库mvn spring-boot:run -Dspring-boot.run.profiles=h2# 指定端口mvn spring-boot:run -Dspring-boot.run.arguments=--server.port=3060

4. 访问系统

打开浏览器访问 http://localhost:3060

账户
用户名
密码
说明
管理员
admin
admin123
超级管理员,拥有所有权限
普通用户
user
user123
默认普通用户

首次启动会自动初始化数据库表结构和默认数据。


五、多数据库兼容性测试

数据库
实测版本
测试结论
MySQL
8.0.46
✅ 全部通过
PostgreSQL
16.15
✅ 全部通过
Oracle
21c Express Edition
✅ 全部通过
H2
2.2.224
✅ 全部通过

六、最后

代码仓库:https://gitee.com/qq1362610708_qq_com/sql-executor

如果觉得这个项目对你有帮助,欢迎点个 ⭐ 收藏支持一下!

有任何问题或建议,欢迎在评论区留言讨论。

相关学习资料