SQL2API-数据库到API转换工具
以前写java代码,java给人的感觉就是啰嗦
先配置数据库连接然后写sql配置参数在输出生成api接口 我这个是想简化开发 从配置数据库连接写个sql加参数就直接出接口了
视频介绍
你可以通过以下视频了解 SQL2API 的功能和使用方法:
视频链接:SQL2API-快速创建 REST API 接口

项目简介
这是一个基于 Nuxt.js 的应用,可以通过配置数据库连接和编写 SQL 查询快速创建 REST API 接口。
功能特性

• 多数据库支持:支持 MySQL、Oracle 等多种数据库连接

• SQL 转 API:通过编写 SQL 语句自动生成 REST API

• API 管理:创建、编辑、删除 API 接口

• API 测试:内置 API 测试工具,方便调试

• 调用日志:记录 API 调用历史,便于排查问题

• 表结构管理:可视化查看和管理数据库表结构

系统截图

登录界面

登录

首页

首页

创建 API

创建 API 页面

表管理

表管理页面

API 列表

API 列表页面

API 测试

API 测试工具页面

调用日志

API 调用日志页面

快速开始

前提条件

Node.js(v18 或更高版本)

pnpm包管理器

• 可用的数据库服务(MySQL/Oracle 等)

安装

1
2
3
4
5
6
# 克隆项目
git clone https://github.com/dickwin2003/SQL2API.git
cd SQL2API

# 安装依赖
pnpm install

配置数据库连接

• 复制db-config.ts.exampledb-config.ts

• 编辑db-config.ts文件,添加您的数据库连接配置。

1
2
3
4
5
6
7
8
9
10
11
12
13
export default {
connections: [
{
name: '生产数据库',
type: 'mysql',
host: 'localhost',
port: 3306,
user: 'root',
password: 'password',
database: 'my_db'
}
]
}

运行项目

1
2
3
4
5
6
7
8
9
# 开发模式
pnpm dev

# 生产模式
cd /opt/SQL2API
yarn install
yarn build

node .output/server/index.mjs

使用指南

1.添加数据库连接

• 登录系统后,进入“数据库连接”页面。

• 点击“添加连接”按钮。

• 填写数据库连接信息并保存。

2.创建 API 接口

• 进入“创建 API”页面。

• 填写 API 基本信息(名称、路径、描述等)。

• 选择目标数据库连接。

• 编写 SQL 查询语句。

• 定义参数(可选)。

• 点击“创建”按钮生成 API。

3.测试 API

• 进入“API 测试”页面。

• 选择要测试的 API。

• 填写参数(如果有)。

• 点击“发送”按钮测试 API。

• 查看返回结果。

API 参数定义

在 SQL 中使用:参数名的形式定义参数,例如:

1
SELECT * FROM users WHERE id = :userId AND status = :status

然后在参数定义部分添加对应参数,指定类型和是否必填。

项目结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
SQL2API/
├── components/ # 前端组件
├── data/ # 本地 SQLite 数据库文件
├── migrations/ # 数据库迁移脚本
├── pages/ # 页面路由
│ ├── api-list.vue # API 列表
│ ├── api-logs.vue # API 日志
│ ├── api-tester.vue # API 测试
│ ├── create-api.vue # 创建 API
│ ├── db-connections.vue # 数据库连接管理
│ └── table-management.vue # 表管理
├── plugins/ # Nuxt 插件
├── public/ # 静态资源
├── server/ # 服务端 API
│ ├── api/ # API 路由
│ ├── plugins/ # 服务端插件
│ └── utils/ # 工具函数
├── app.vue # 应用入口
├── db-config.ts # 数据库连接配置
├── nuxt.config.ts # Nuxt 配置
└── package.json # 项目依赖

技术栈

• 前端:Vue 3,Nuxt 3,Element Plus

• 后端:Node.js,SQLite(元数据存储)

• 数据库驱动:mysql2,postgres

• 构建工具:Vite

注意事项

• 生产环境请确保添加适当的认证机制。

• 敏感数据库信息请妥善保管。

• 复杂查询建议添加适当的索引优化性能。