耗時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的業務代碼,從而解放自己的生產力,去做更有價值的事情,是擺在每個人面對待解決的問題。

慶幸的是,我們藉助開源的力量,讓更多人看到有人在持續爲了這個目標努力着。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章