sqlchat

用聊天的方式查数据库,不懂 SQL 也能秒出结果

sqlchat 是一个基于聊天的 SQL 客户端和编辑器,旨在通过自然语言交互来简化数据库操作。它解决了传统 SQL 工具学习成本高、编写复杂查询门槛高的问题,让用户无需精通 SQL 语法即可通过对话方式完成数据查询、分析和编辑。核心能力包括:连接多种主流数据库(如 MySQL、PostgreSQL、ClickHouse、Snowflake 等),利用 OpenAI 等大模型将自然语言转换为 SQL 语句,并提供直观的聊天界面展示查询结果。项目采用 TypeScript 开发,支持多数据库方言,适合数据分析师、产品经理等非专业 DBA 快速获取数据洞察。

开源 freemium 对话助手
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 5846
维护状态 低维护
是否开源
定价模式 freemium

项目数据

分类对话助手
开发团队sqlchat
所属国家
官网地址https://sqlchat.ai
定价模式freemium
价格说明提供免费在线版本,基础功能免费使用,高级功能或更多额度需付费订阅。
访问状态
是否开源
开源协议MIT
主要语言TypeScript
技术栈/模型chatgpt,clickhouse,cockroachdb,gpt,mongodb,mssql,mysql,openai,oracle,postgres,redis,snowflake,sql,sqlclient,sqleditor,sqlite,sqlserver,text-to-sql,text2sql,tidb
GitHub 星标★ 5846
30天Star增速
HF 下载量
上线时间2023-03-16 00:00:00
最近更新2026-09-18 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数5

使用教程

难度:入门 约 10 分钟 部署方式:Docker 6 步

环境要求

  • 已安装 Docker
  • 准备一个 OpenAI API Key(OPENAI_API_KEY)
  • 提供一个任意字符串作为 NEXTAUTH_SECRET
  • 宿主机空闲 3000 端口
  • (可选)本地 Postgres 实例,用于需要数据库的功能

安装与启动步骤

  1. 1准备密钥

    准备 OpenAI API Key 和任意一个随机字符串作为 NEXTAUTH_SECRET;后者不填 next-auth 会报错。

  2. 2启动 Docker 容器

    用官方镜像拉起 sqlchat,映射 3000 端口;镜像为 amd64 平台,苹果芯片也能跑。

    docker run --name sqlchat --platform linux/amd64 --env NEXTAUTH_SECRET="$(openssl rand -hex 5)" --env OPENAI_API_KEY=<> -p 3000:3000 --hostname localhost sqlchat/sqlchat
  3. 3启动 Postgres

    若要用到依赖数据库的功能,先自行启动一个 Postgres 实例;不需要可跳过并设置 NEXT_PUBLIC_USE_DATABASE=false。

  4. 4创建数据库

    在 Postgres 中新建名为 sqlchat 的数据库,并把连接串写入 .env 的 DATABASE_URL 和 DATABASE_DIRECT_URL。

    CREATE DATABASE sqlchat;
  5. 5初始化表结构

    在项目目录执行 Prisma 迁移,生成数据库表结构(需要 pnpm 环境)。

    pnpm prisma migrate dev
  6. 6(可选)导入种子数据

    迁移完成后可执行 seed 命令写入示例数据,非必需。

    pnpm prisma db seed

关键配置

配置项必填说明示例
OPENAI_API_KEY调用 OpenAI 大模型,将自然语言转换为 SQLsk-xxxxxxxxxxxxxxxx
NEXTAUTH_SECRETnext-auth 所需的任意字符串,不填会报错a1b2c3d4e5
NEXT_PUBLIC_USE_DATABASE设为 false 可跳过数据库相关功能与建库步骤false
DATABASE_URLPostgres 连接串,用于存放应用自身数据postgresql://user:pass@localhost:5432/sqlchat
DATABASE_DIRECT_URLPrisma 直连地址,与 DATABASE_URL 成对配置postgresql://user:pass@localhost:5432/sqlchat

如何确认成功

浏览器打开 http://localhost:3000,能看到聊天界面即启动成功。

常见问题

Q:官方托管版 sqlchat.ai 连不上我的数据库?

A:sqlchat.ai 部署在 Vercel 上使用动态 IP,需把 0.0.0.0(允许所有连接)加入数据库白名单;有安全顾虑请改用自托管。

Q:容器里连不上宿主机上的数据库?

A:数据库在宿主机时,连接配置里的 host 要用 host.docker.internal,而不是 localhost。

Q:不想搭建数据库可以吗?

A:可以,设置环境变量 NEXT_PUBLIC_USE_DATABASE=false,即可跳过建库和 Prisma 迁移步骤。

Q:启动时报 next-auth 相关错误?

A:NEXTAUTH_SECRET 必须传入任意非空字符串,用 openssl rand -hex 5 生成即可。

注意事项

  • 官方镜像启动参数带 --platform linux/amd64,非 x86 机器会自动走模拟。
  • 容器名固定为 sqlchat,端口映射为 3000:3000,重复启动前先删除同名容器。
  • Prisma 的 migrate 与 seed 命令需要项目源码和 pnpm 环境,仅用 Docker 跑可跳过。
  • 不要把真实 OPENAI_API_KEY 提交到公开仓库或分享给他人。

核心亮点

  • 支持 10+ 主流数据库,覆盖 MySQL、PostgreSQL、ClickHouse 等,开箱即用
  • 自然语言直接转 SQL,大幅降低数据查询门槛,适合非技术人员
  • 界面简洁,聊天交互直观,查询结果即时展示,体验流畅

不足之处

  • 依赖外部大模型 API,离线或内网环境无法使用
  • 复杂查询的 SQL 生成准确率有限,仍需人工校验

适用场景

  • 数据分析师快速探索数据库,无需手写复杂 SQL
  • 产品经理或运营自助查询业务数据,减少对技术团队的依赖
  • 教学场景中帮助初学者理解 SQL 生成逻辑

替代项目

Text-to-SQL、Vanna、AI2SQL

项目介绍

sqlchat 是对话助手领域的开源项目,由 sqlchat 开发,2023 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(5,846)位列前 8%,在对话助手分类的 905 个项目里位列前 5%。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-18。提供免费在线版本,基础功能免费使用,高级功能或更多额度需付费订阅。从国内网络环境看,当前已无法正常访问。

它主要面向的使用场景是:数据分析师快速探索数据库,无需手写复杂SQL。同类可对比的替代方案包括 Text-to-SQL、Vanna、AI2SQL。

上一篇:awesome-chatgpt

下一篇:Marina-GPT

同类项目推荐

open-webui 开源

给本地模型配个漂亮聊天室,全家都能用

User-friendly AI Interface (Supports Ollama, OpenAI API, ...)

★ 152821 2026-08-09
prompts.chat 开源

海量好提示词,抄了就能让 AI 更听话

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the commun···

★ 170999 2026-08-09
elia 开源

终端里用键盘快速聊 AI,多模型切换不打断思路

A snappy, keyboard-centric terminal user interface for interacting with large langua···

★ 2479 2026-08-09
NextChat 开源

一个界面聊遍所有主流AI模型,支持全平台部署,轻快又私密。

✨ Zero-config AI chat assistant. No API key needed — sign up and instantly chat wi···

★ 88802 2026-08-09