转载-【AI思维空间】Chat2DB 一款开源数据库客户单工具

news2024/9/22 11:29:54
卸载 Navicat, xxx 又开源了一款数据库神器,太炸了

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 = '小明'

## ---SQL优化:---

优化建议:

1. 索引优化:为student表的name字段创建索引,可以加快WHERE条件的查询速度。

2. JOIN优化:可以使用子查询或者临时表的方式,将student表中name为小明的记录先筛选出来,再进行JOIN操作,可以减少JOIN操作的数据量,提高查询效率。

3. 数据库设计优化:可以考虑将student表和student_course表合并为一张表,避免JOIN操作,提高查询效率。

4. 缓存优化:可以将查询结果缓存起来,避免重复查询,提高查询效率。

## --- END ---

曾几何时,为了写出一条好的SQL,在工位旁走来走去,薅秃了头发;

有了这款神器,相信每一位开发人员不仅能轻松的写出sql,而且还能写出高质量的sql

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/708384.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于JSP+Servlet+Mysql的智能化停车场管理系统(含论文)

TOC 一、系统介绍 项目类型:Java web项目 项目名称:基于JSPServlet的智能智能停车场管理系统 源码作者:未知 项目架构:B/S架构 开发语言:Java语言 前端技术:HTML、CSS、JS等技术 后端技术&#xff…

中国国债发行数据集(2002-2023)

国债是由国家发行的债券,由于国债的发行主体是国家,所以它具有最高的信用度,被公认为是最安全的投资工具。国债按照交易市场的不同分为三类,即银行间市场国债、交易所市场国债和柜台市场国债;按照交易方式的不同分为三…

PCB绘制封装

绘制封装 常见的电阻封装如下: 绘制封装的一般步骤: 丝印不重要,关键是焊盘。 第一步是确认中心(对称中心);第二步,围绕着对称中心,放置焊盘。直插式的焊盘要放大孔径,贴片式的焊盘要加长&am…

springboot-配置优先级

配置文件 类型 1.properties(三者同时存在,优先级最高) 2.yml 3.yaml(最低) 除此之外,可以在启动配置处修改 //java系统属性配置, -Dserver.port8080,优先级高于以上三种 //命令行参数 --server.port10010&#xff0…

【SQL应知应会】行列转换(一)• MySQL版

欢迎来到爱书不爱输的程序猿的博客, 本博客致力于知识分享,与更多的人进行学习交流 本文收录于SQL应知应会专栏,本专栏主要用于记录对于数据库的一些学习,有基础也有进阶,有MySQL也有Oracle 行列转换 • Mysql版 一、MySQL行列转换1.准备操作…

kafka入门,数据去重(九)

数据传递语义 至少一次:ACK级别设置为-1分区副本大于等于2ISR里应答的最小副本数量大于等于2 最多一次:ACK级别设置为0 总结: At Least Once:可以保证数据不丢失,但是不能保证数据不重复 At Most Once:可以…

智慧园区运营管理平台解决方案

智慧园区运营管理平台是当今现代城市发展中的一项重要工具。随着城市人口不断增长,对城市基础设施和服务的需求也不断增加。为了有效管理和优化园区内的各项运营活动,智慧园区运营管理平台应运而生。 智慧园区运营管理平台是基于现代信息技术和互联网技术…

10W+前端面试题面试资料八股文

点击下方链接获取全部内容文档题目及其答案: 10W前端面试题&面试资料&八股文题目及其答案 https://m.tb.cn/h.5a7v237?tkQeVPdsoKwr4 CZ3457 部分题目如下: 1. call丶apply丶bind区别及源码实现(手写) 不同点: call…

HTML 编辑器的介绍及推荐

HTML 编辑器 HTML 编辑器是用于编写 HTML 的工具,使用 HTML 编辑器时以编辑主题,索引,自定义窗口,选择添加搜索页。 使用 Notepad 或 TextEdit 来编写 HTML 下列是三种专门用于编辑 HTML 的 HTML 编辑器: Adobe Dream…

ChatGPT实战:高考志愿填报

近期,随着各地陆续发布高考成绩,高考志愿填报市场随之升温,“高报师”再次成为“香饽饽”。填报志愿对中学生来说太难,在一个懵懂的年纪做这样一个决策,份量是比较重的。当普通人没很多的信息做参考的时候,…

【测试效率提升技巧】xmind测试用例转换为excel工具使用手册

【测试效率提升技巧】xmind测试用例转换为excel工具使用手册 一、前置环境配置二、执行Xmind2testcase的转换方法1.在控制台输入xmind2testcase [path/xmind文件路径] [-csv] [-xml] [-json],例:xmind2testcase /root/homin/XX测试点.xmind -csv ##在当前…

HBase(14):HBase架构

1 系统架构 1.1 Client 客户端,例如:发出HBase操作的请求。例如:之前我们编写的Java API代码、以及HBase shell,都是CLient 1.2 Master Server 在HBase的Web UI中,可以查看到Master的位置。 监控RegionServer处理RegionServer故障转移处理元数据的变更处理region的分配或…

【Python 随练】学用 circle 函数画圆形。

题目: 画图,学用circle函数画圆形。 简介: 在本篇博客中,我们将介绍如何使用Python的绘图库来画圆形。我们将使用circle函数来绘制圆形,并提供一个完整的代码示例来演示其用法。 绘制圆形: 要绘制圆形…

使用Megascans,Blender和Substance 3D画家创建渔人旅馆(p1)

今天瑞云渲染小编给大家带来一篇Polina Tarakanova分享的Fishermans Inn项目背后的工作流程,展示了如何完成水分效果,并解释了照明的设置方式。 介绍 你好! 我叫Polina Tarakanova,今年30岁,是一名来自莫斯科的初级环境艺术家。从…

ISE软件基本使用

ISE软件基本使用 基本设置 关联notepad的操作:选择notepad的exe文件路径,并且加 { } 符号,并在结尾加$1。ISE可以设置程序运行的速度等级,该速度等级会影响程序从外部SPI Flash启动的启动速度。JTAG 接口的作用是将编译好的程 序…

pikache靶场通关——CSRF攻击

文章目录 前言使用工具第一关(host:192.168.1.107)、CSRF(get) loginStep.1、以受害者身份登录账号Step.2、以受害者身份点击修改个人信息的按钮Step.3、以黑客身份使用burp进行抓包(查看对面修改格式)Step4、以黑客身…

文件打包解包的方法

文件打包 前言 在很多情况下,软件需要隐藏一些图片,防止用户对其更改,替换。例如腾讯QQ里面的资源图片,哪怕你用Everything去搜索也搜索不到,那是因为腾讯QQ对这些资源图片进行了打包,当软件运行的时候解…

在SpringBoot中的Jackson使用笔记

在SpringBoot中的Jackson使用笔记 常用的java转json,json反序列化为java等方法,这里定义成一个工具类来用jackson package cn.ath.knowwikibackend.util;import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.core.Jso…

VRP基础操作

目录 一、华为VRP 1.1、VRP介绍 1.2、设备管理接口 1.3、Console口登录 1.4、参数配置 二、华为VRP命令行基础 2.1、真机设备初始化启动 2.2、命令行视图 2.3、命令行功能 2.4、命令行在线帮助 2.5、配置系统时钟 2.6、配置标题消息 2.7、命令等级 2.8、用户界面…

Apikit 自学日记:使用全局变量传递参数

全局变量可以在测试过程中动态取值以及赋值,比如:使用登录接口获取token,将token值赋值给自定义全局变量 global_token ,然后在另一个需要使用该token的接口中,使用{{global_token}}或者代码来引用该全局变量&#xff…