耗时6个月,我做了一款干净、免费、开源的AI数据库
一、Chat2DB简介
在消失的这段时间,我和小伙伴们做了一款集成了AI的数据库管理工具Chat2DB。
他是数据库也集成了AIGC的能力,能够将自然语言转换为SQL,也可以将SQL转换为自然语言,还可以给出SQL的优化建议,可以极大提升效率。
GitHub地址:https://github.com/chat2db/chat2db
官网地址:https://chat2db.ai
相较于市面上已有的数据库管理工具,我认为Chat2DB的独特优势在于如下几点:
AI 智能生成SQL、SQL解析: Chat2DB是一个在数据库操作平台上嵌入了AI交互功能的工具,用户可以通过自然语言或语音输入查询,AI助手能够理解查询并生成对应的SQL代码,还可以将SQL查询转换为自然语言,并提供优化建议,简化数据库查询过程。
这对于提效来说,是一个近乎王炸的优化,一是对于研发人员,它可以给出SQL的优化建议、也可以分析慢SQL并建议改进其性能的方法;二是对于不懂SQL语法的产品和运营同学,有了Chat2DB,他们也可以快速完成数据查询并且生成报表,这既节省了开发同学的工作量,还节省了开发和业务之间的沟通成本,可以说是降本增效的利器了。
强大的扩展能力: Chat2DB支持多种数据源,目前已经支持Mysql、PostgreSQL、Oracle、SQLServer、ClickHouse、Oceanbase、H2、SQLite等,基本已经涵盖了目前开发常用的数据库类型。
多端一体化解决方案: 支持多端访问,Mac、Windows客户端目前都已经支持,不仅如此,还考虑到了一些同学喜欢web版用完就走,不喜欢安装一堆软件,所以还提供了Web版,可以说是十分人性化了。
Chat2DB的数据库管理基本功能也已经十分完善,就算不看AI能力,也已经是数据库管理工具中的佼佼者了。
Chat2DB整体的设计简单易用,没有任何花里胡哨的东西,符合技术人喜欢简洁的特点。 Chat2DB还有着强大的数据管理能力,支持数据表、视图、存储过程、函数、触发器、索引、序列、用户、角色、授权等管理(部分开发中) 它还可以支持团队协作,研发无需知道线上数据库密码,解决企业数据库账号安全问题。 它还支持环境隔离、线上、日常数据权限分离,便于开发时的数据管理(部分开发中)。
作为一个对AI十分感兴趣的服务端程序员,在ChatGPT刚刚火起来的时候,就一直在思考如何在开发工作中利用ChatGPT提效,SQL提效也是一直在思考中的,现在我们把它做出来,而且看github上的star趋势也是十分火热,这点还是比较开心的。

二、简洁易用的交互设计
这真的是一个我们用了很多心思的产品,首先体现在整体的视觉体验上,对于一个工具类产品,让使用者感觉简单易用是十分必要的。
我们也是遵循着简洁易用的原则,整体视觉体验参考了Navicat、DBever、DataGrip,综合比较了这几款软件最终还是觉得DataGrip体验最好,在设计更多的借鉴了DataGrip的一些设计。以下是几个数据库管理工具的界面比较:
Navicat:

DBever:

DataGrip:

Chat2DB:


三、核心功能演示
1、安装&配置
1.1、新建数据库连接
点击左侧“连接”按钮,点击右侧“新建链接”按钮,选择数据库类型,输入数据库连接信息,点击“连接”按钮即可连接数据库。


1.2、配置数据库信息
配置数据库连接信息,点击“测试连接”按钮,如果连接成功,点击“连接”按钮即可连接数据库。

1.3、驱动配置
链接数据库需要下载对应的驱动,如果驱动为空有两种方式配置驱动
1、如果可以链接公网,点击“下载驱动”按钮,下载驱动,然后点击选择驱动。
2、如果无法连接公网或者默认驱动不能适配你的数据库,可以在本地下载驱动,点击“上传驱动”按钮,选择驱动文件上传,上传成功后即可使用。


2、使用AI
2.1、AI 生成SQL
在数据库管理中,选中数据库,新建SQL控制台,在控制台上方有一个输入框,输入你需要让AI帮你查询的数据回车,AI 会自动的在控制台生成你想要的SQL,点击执行按钮就可执行 SQL 控制台下方会显示你查询的结果。

2.2、SQL 解释
选中 SQL 右键 解释SQL,在右侧弹窗中 AI 即可对 SQL 解释生成内容。

2.3、SQL优化
选中 SQL 右键 优化SQL,在右侧弹窗中 AI 即可对 SQL 生成建议。

2.4、SQL转化
选中 SQL 右键 转化SQL,在右侧弹窗中 AI 即可对 当前 SQL 转换到其他数据库的 SQL 语法。
2.5、BI 报表
点击左侧第二个“仪表盘”按钮,可以查看已经创建的报表,单击切换即可看到相应的报表数据 。

点击"+"按钮可以新建报表,输入报表名称,点击保存,选中刚新建的仪表盘开始添加数据。
具体步骤如下:
1、当前卡片选择数据源,可以选择已经连接的数据库。
2、输入该报表要查询的数据,AI 开始生成 SQL。
3、点击执行按钮返回数据格式。
4、选择报表格式,x坐标 y坐标。
5、点击保存卡片。
6、点击卡片下方"+"号,在当前报表继续添加卡片,步骤同上。

3、数据库管理
3.1、查看有权限的datasource

3.1、查看有权限的database
查询所有有权限的database

3.2、查看有权限的shema
查询database下的shema信息

3.3、查看有权限的表以及表结构
查询database或schema下的所有表,以及表的字段、索引信息

3.4、SQL控制台查询
执行各种sql,支持批量、支持格式化

3.5、支持console保存
用户执行的历史记录或者保存的记录都可以在历史记录看到,可以快速使用执行执行过的数据

3.6、支持自定义主题
可以根据自己的喜好选择背景色和不同的主题色

3.7、支持自定义AI能力
支持配置不同的AI能力

四、总结
GitHub地址:https://github.com/chat2db/chat2db
官网地址:https://chat2db.ai
AI时代,谁能最大化的通过AI来给自己提升效率,谁就走在了其他人的前面,对于程序员也不例外。
如何通过擅用工具,完成繁琐重复的SQL取数、CRUD的业务代码,从而解放自己的生产力,去做更有价值的事情,是摆在每个人面对待解决的问题。
庆幸的是,我们借助开源的力量,让更多人看到有人在持续为了这个目标努力着。
耗时6个月,我做了一款干净、免费、开源的AI数据库的更多相关文章
- 为什么要做一款ERP软件——开源软件诞生7
技术之外的探讨--第7篇 用日志记录“开源软件”的诞生 赤龙ERP开源地址: 点亮星标,感谢支持,与开发者交流 kzca2000 码云:https://gitee.com/redragon/redra ...
- 神龟快跑,2016做的一款UWP游戏
神龟快跑,2016做的一款UWP游戏, 实际是H5页面, 用LAYA转AS3得到的 安装地址 https://www.microsoft.com/zh-cn/store/p/神龟快跑/9nblggh4 ...
- 由生到死10个月!做App中的“二”有多难
十月,原本是怀胎过程的喜悦时光,但这段个时光,如今却是绝大多数App从生到死的所有时间.在App市场表面形式一片大好,彻底主宰我们生活.工作.娱乐的当下,绝大多数用户只是在App海洋中只取一瓢饮,其他 ...
- 我的开源之路:耗时 6 个月发布线程池框架,GitHub 1.7k Star!
文章首发在公众号(龙台的技术笔记),之后同步到掘金和个人网站:xiaomage.info Hippo4J 线程池框架经过 6 个多月的版本迭代,2022 年春节当天成功发行了 1.0.0 RELEAS ...
- 纯干货!耗时1个月整理黑马程序员Java教程+笔记+配套工具
学习Java是不是很苦?找不到资料?不了解学习步骤?想要全面的线路图! 或者是找资料,前面免费,后面收费?工具软件要收费? 当当当~~今天就没有这个状态发生了!不信就证明给你看 1.学习路线图 2.J ...
- BZOJ5131: [CodePlus2017年12月]可做题2
BZOJ没有题面,差评 洛谷的题目链接 题解 其实这题很久之前就写了,也想写个题解但是太懒了,咕到了今天 在typora写完题解不想copy过来再改格式了,于是直接贴截图qwq #include &l ...
- 耗时近一个月,终于录完了VUE.JS2.0前端视频教程!
这次课录制的比较辛苦,圣诞节时原本已经快录制完成了,偶然的一次,播放了一下,感觉不满意,好几篇推倒重来,所以今天才结束. vue.js2.0是Vue.JS的最新版本,视频教程还不多,如果你看到了,学到 ...
- 推荐一个IT老鸟肝了2月有余的免费开源WPF企业级开发框架
一个新学WPF的IT老鸟,肝了2个月做了这么一个WPF企业级开发框架,站长clone学习,觉得甚是不错.这是一个使用了Prism搭建的插件式框架,封装了DataGrid的使用,使整个框架子模块简单易学 ...
- AI:用软件逻辑做硬件爆款
"我们的野心不止那么一点点." 百度集团副总裁.百度智能生活事业群组(SLG)总经理.小度CEO景鲲曾多次对外表达过这样的观点. 在2021年百度世界大会上,小度又一口气发布了四款 ...
- 好消息:8月25日广州嵌入式Linux开发免费项目约定你
8月18日,粤嵌深圳分校举行了盛大的免费嵌入式项目体验,众多嵌入式爱好者排队参加项目体验的火爆场景仿佛还在眼前,体验效果得到学员一致好评.时隔一周,粤嵌广州总部也不容落后,在粤嵌广州总部举办<嵌 ...
随机推荐
- 2021-09-18:给定一个只包括 ‘(‘,‘)‘,‘{‘,‘}‘,‘[‘,‘]‘ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合
2021-09-18:给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效.有效字符串需满足:左括号必须用相同类型的右括号闭合.左括号必须以正确的顺序闭合 ...
- Requested setting INSTALLED_APPS, but settings are not configured. You must either define the env...
解决办法 在test.py文件的最头部加上以下代码,配置环境 import os,django os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'djb ...
- [ABC268C] Chinese Restaurant
[ABC268C] Chinese Restaurant 声明:以上的所有操作都会再做一次\(%n+n)%n\),比如\(i - 1\)会变成\(((i-1)%n+n)%n\) 题意 有 \(n\) ...
- Prompt Engineering优化原则 - 以Webshell代码解释为例
一.LLM prompt优化原则 本文围绕"PHP代码解释"这一任务,讨论LLM prompt优化原则. 代码样例如下: <?php echo "a5a5aa555 ...
- Kubernetes(k8s)一次性任务:Job
目录 一.系统环境 二.前言 三.Kubernetes Job简介 四.创建一次性任务job 4.1 创建一个简单任务的job 4.2 创建需要执行多次的job任务 五.测试job失败重试次数 六.j ...
- 了解基于模型的元学习:Learning to Learn优化策略和Meta-Learner LSTM
摘要:本文主要为大家讲解基于模型的元学习中的Learning to Learn优化策略和Meta-Learner LSTM. 本文分享自华为云社区<深度学习应用篇-元学习[16]:基于模型的元学 ...
- 「有问必答」Go如何优雅的对时间进行格式化?
昨天 交流群 关于「Go如何优雅的对时间进行格式化?」展开了讨论: 咋搞捏? 如何在不循环的情况下,把列表数据结构体的时间修改为咱们习惯的格式,而不是UTC模式 我们要实现的效果如下: created ...
- 有哪些ASIC加速技术可以实现低功耗运行?
目录 文章主题: 10. 有哪些ASIC加速技术可以实现低功耗运行? 背景介绍:随着移动设备.物联网.云计算等应用场景的不断增长,功耗成为了一个日益重要的技术问题.为了在移动设备上实现更长时间的运行, ...
- 【Shell】字符串
单引号和双引号 shell 字符串可以用单引号 '',也可以用双引号 "",也可以不用引号. 单引号的特点 单引号里不识别变量 单引号里不能出现单独的单引号(使用转义符也不行),但 ...
- sql中当关联查询主表很大影响查询速度时怎么办?
sql中当关联查询主表很大时,直接关联,查询速度会较慢,这时可以先利用子查询经筛选条件筛除一部数据,这样主连接表体量减少,这样能一定程度加快速度. (1)常规join -- 最慢7.558s sele ...