暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

还在用 Navicat?阿里又开源了一款数据库神器,太炸裂了!

SQL数据库开发 2023-10-31
45

点击关注公众号,SQL干货及时获取

后台回复:1024,获取海量学习资源
SQL刷题专栏
SQL145题系列


大家注意:

因为微信改了推送机制,会有小伙伴刷不到当天的文章,

一些比较实用的知识和信息,错过了就是错过了。

所以建议大家加个星标,就能第一时间收到推送了。

  • 特性
  • 安装包下载
  • Docker 安装
  • 使用

Chat2DB 是一款有开源免费的多数据库客户端工具,支持windows、mac本地安装,也支持服务器端部署,web网页访问。和传统的数据库客户端软件Navicat、DBeaver 相比Chat2DB集成了AIGC的能力,能够将自然语言转换为SQL,也可以将SQL转换为自然语言,可以给出研发人员SQL的优化建议,极大的提升人员的效率,是AI时代数据库研发人员的利器,未来即使不懂SQL的运营业务也可以使用快速查询业务数据、生成报表能力。

特性

  • AI智能助手,支持自然语言转SQL、SQL转自然语言、SQL优化建议
  • 支持团队协作,研发无需知道线上数据库密码,解决企业数据库账号安全问题
  • 强大的数据管理能力,支持数据表、视图、存储过程、函数、触发器、索引、序列、用户、角色、授权等管理
  • 强大的扩展能力,目前已经支持MySQL、PostgreSQL、Oracle、SQLServer、ClickHouse、OceanBase、H2、SQLite等等,未来会支持更多的数据库
  • 前端使用 Electron 开发,提供 Windows、Mac、Linux 客户端、网页版本一体化的解决方案
  • 支持环境隔离、线上、日常数据权限分离

安装包下载

描述下载地址
Windowshttps://oss-chat2db.alibaba.com/release/1.0.11/Chat2DB%20Setup%201.0.11.exe
MacOS ARM64 (Apple芯片)https://oss-chat2db.alibaba.com/release/1.0.11/Chat2DB-1.0.11-arm64.dmg
MacOS X64 (Intel芯片)https://oss-chat2db.alibaba.com/release/1.0.11/Chat2DB-1.0.11.dmg
Jar包https://oss-chat2db.alibaba.com/release/1.0.11/ali-dbhub-server-start.jar

Docker 安装

docker pull chat2db/chat2db:latest
// 前台运行,运行后不能关闭命令行
docker run -ti --name=chat2db -p 10824:10824 chat2db/chat2db:latest
// 后台运行,运行后可以关闭命令行
docker run --name=chat2db -p 10824:10824 chat2db/chat2db:latest
// 这里正常会提示 Tomcat started on port(s): 10824 (http) with context path 就可以结束了

// 如果这里提示  The container name "/chat2db" is already in use by container, 代表已经存在容器了 运行
dcoker run chat2db
// 如果想更新chat2db 则需要先rm 再运行
dcoker rm chat2db

使用

创建连接

数据源管理
代理配置

使用前需要配置OpenAI的Api Key及本地代理配置

自然语言转换
## ---BEGIN---
## 查询学生小明的各科目成绩

## ---自然语言转换:---
SELECT score.score 
FROM score 
INNER JOIN student_course ON score.course_id = student_course.course_id 
INNER JOIN student ON student_course.student_id = student.id 
WHERE student.name = '小明'
## --- END ---

sql优化

## ---BEGIN---
## SELECT score.score 
FROM score 
INNER JOIN student_course ON score.course_id = student_course.course_id 
INNER JOIN student ON student_course.student_id = student.id 
WHERE student.name = '小明'

优化建议:

  1. 索引优化 :为student表的name字段创建索引,可以加快WHERE条件的查询速度。
  2. JOIN优化 :可以使用子查询或者临时表的方式,将student表中name为小明的记录先筛选出来,再进行JOIN操作,可以减少JOIN操作的数据量,提高查询效率。
  3. 数据库设计优化 :可以考虑将student表和student_course
    表合并为一张表,避免JOIN操作,提高查询效率。
  4. 缓存优化 :可以将查询结果缓存起来,避免重复查询,提高查询效率。

曾几何时,同事为了写出一条好的SQL,在工位旁走来走去,薅秃了头发;有了这款神器,相信每一位开发人员不仅能轻松的写出sql,而且还能写出高质量的sql

  • 开源地址:https://github.com/chat2db/Chat2DB


最后给大家分享我写的SQL两件套:《SQL基础知识第二版》《SQL高级知识第二版》的PDF电子版。里面有各个语法的解释、大量的实例讲解和批注等等,非常通俗易懂,方便大家跟着一起来实操。


有需要的读者可以下载学习,在下面的公众号「数据前线」(非本号)后台回复关键字:SQL,就行

数据前线


后台回复:1024,获取一份精心整理的技术干货

后台回复:进群,带你进入高手如云的交流群。


推荐阅读

文章转载自SQL数据库开发,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论