# sql-parser **Repository Path**: jamer/sql-parser ## Basic Information - **Project Name**: sql-parser - **Description**: sql解析后端服务,主要功能:sql解析,sql格式化,sql校验,sql转化,sql审核规则,sql血缘分析 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-24 - **Last Updated**: 2026-05-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SQL Parser 基于 Spring Boot 3 的 SQL 解析器,支持词法分析、语法分析、AST 构建与方言转换。 ## 功能 - **SQL 解析** — 解析 SQL 语句,提取表名、列名、AST 结构 - **SQL 格式化** — 格式化 SQL 语句,支持缩进/大小写配置 - **SQL 审核** — 内置审核规则(全表扫描、无 WHERE 条件、SELECT * 等) - **SQL 方言转换** — MySQL / PostgreSQL / Oracle 三种方言互转 - **解析记录** — 自动记录每次解析历史和耗时 - **规则管理** — RESTful API 管理审核规则 ## 支持的方言 - MySQL - PostgreSQL - Oracle ## 技术栈 - Spring Boot 3.4 - Spring Data JPA + H2(开发)/ MySQL(生产) - ANTLR 4.13(词法/语法分析) - Maven ## 快速开始 ```bash mvn spring-boot:run ``` 默认启动在 `http://localhost:8080`。 ## 项目结构 ``` src/main/antlr/ — ANTLR 语法文件(词法/语法规则) src/main/java/ — Java 源码 ├── common/ — 通用异常处理、响应包装 ├── controller/ — REST 控制器 ├── model/ — DTO、实体 ├── parser/ — 解析引擎、AST 节点、构建器 ├── rule/ — 审核规则引擎 ├── service/ — 业务服务层 └── repository/ — 数据访问层 src/main/resources/ — 配置文件 src/test/ — 单元测试 ``` ## API | 端点 | 说明 | |------|------| | `POST /api/sql/parse` | SQL 解析 | | `POST /api/sql/format` | SQL 格式化 | | `POST /api/sql/validate` | SQL 审核 | | `POST /api/sql/translate` | 方言转换 | | `GET /api/records` | 解析记录列表 | | `GET /api/rules` | 审核规则列表 |