当前位置: 首页 > news >正文

开发一款自然语言转sql的网页版数据库管理工具,不需要使用网上那些付费版,自己搭建一套数据库管理工具,免费开源

# chat-db

chat-db 是一款将自然语言转sql的数据库工具,允许用户通过界面连接到 MySQL 数据库,并使用自然语言生成 SQL 查询。你能使用navicat用的也能在这块工具上免费使用

## 功能特点

- 连接 MySQL 数据库并管理连接
- 可视化数据库结构(数据库、表、字段)
- 查看表数据和结构
- 执行 SQL 查询
- 使用 AI 将自然语言转换为 SQL 查询

## 技术栈

- 前端:React、Ant Design、Monaco Editor
- 后端:Node.js、Express
- 数据库:MySQL
- AI:OpenAI API

## 安装与设置

### 前置要求

- Node.js 14+
- MySQL 服务器

### 安装步骤

1. 克隆仓库
   ```
   git clone https://github.com/dudl0428/chat-db.git
   cd chat-db
   ```

2. 安装依赖
   ```
   npm install
   ```

3. 配置环境变量
   
   创建 `.env` 文件,并配置以下内容:
   ```
   PORT=5000
   OPENAI_API_KEY=your_openai_api_key
   ```
   
   请将 `your_openai_api_key` 替换为您的 OpenAI API 密钥。

4. 启动开发服务器
   ```
   npm run dev
   ```

5. 访问应用
   
   打开浏览器,访问 `http://localhost:3000`

功能演示

 

   

  

img_5.png

 

使用说明

  1. 连接数据库

    • 在首页填写 MySQL 连接信息
    • 点击"连接"按钮
  2. 浏览数据库

    • 在左侧边栏查看数据库和表结构
    • 点击表名查看表数据
  3. 查询数据

    • 在"SQL 查询"标签页中编写 SQL 查询
    • 点击"执行查询"按钮
  4. AI 生成 SQL

    • 点击"Chat with AI"按钮
    • 输入您的自然语言请求,如"显示最近一个月的订单"
    • AI 将生成相应的 SQL 查询

开发说明

项目结构

db-ai-assistant/
├── src/
│   ├── client/            # 前端代码
│   │   ├── components/    # React 组件
│   │   ├── pages/         # 页面组件
│   │   └── ...
│   ├── server/            # 后端代码
│   │   ├── controllers/   # 控制器
│   │   ├── routes/        # 路由
│   │   ├── services/      # 服务
│   │   └── index.js       # 服务器入口
│   └── ...
├── .env                   # 环境变量
└── package.json           # 项目配置

构建生产版

npm run build

相关文章:

  • Unix 域套接字(本地套接字)
  • YOLOv12环境配置,手把手教你使用YOLOv12训练自己的数据集和推理(附YOLOv12网络结构图),全文最详细教程
  • 基于Spring Boot的产业园区智慧公寓管理系统的设计与实现(LW+源码+讲解)
  • 一区思路!
  • Java-模块二-1
  • Java 对 PDF 文件添加水印
  • 利用 MATLAB/Simulink 建立完整的控制系统模型,并进行阶跃响应和负载扰动响应仿真
  • 算法与数据结构(和为K的子数组)
  • 深入解析 .NET 中的依赖项加载机制:原理、实现与最佳实践
  • 一人系统 之 为什么要做一人系统?
  • 认知突破、执行闭环与生态创新:DeepSeek、Manus与Coze的AI应用
  • 爬虫案例-爬取某站视频
  • Lua 的 Neovim 常用配置
  • Vue3 组件通信 $refs $parent
  • 【React】使用Swiper报错`Swiper` needs at least one child
  • 前端会话控制技术:cookie/session/token
  • 特斯拉Optimus 2.0:多模态感知与强化学习引领家庭场景变革
  • 【递归、搜索和回溯算法】专题三 :穷举VS暴搜VS深搜VS回溯VS剪枝
  • WebGL图形编程实战【2】:动态着色 × 纹理贴图技术揭秘
  • 学习Flutter:搭建第一个 Flutter 应用
  • 加拿大新政府宣誓就职
  • 第十届影像上海博览会落幕后,留给中国摄影收藏的三个问题
  • 中美是否计划讨论美方以芬太尼为由对华征收的特别关税?外交部回应
  • 江西省市场监管局原局长谢来发被双开:违规接受旅游活动安排
  • 男子发寻母视频被警方批评教育,律师:发寻亲信息是正当行为
  • 第1现场 | 印巴停火次日:当地民众逐渐恢复正常生活