SQL Admin简介

SQL Admin是一个使用ElectronVueArco Design构建的数据库管理工具,目标是为开发者、数据库管理员或任何需要使用数据库的人员提供一个可视化的、统一的、易用的数据库管理工具。

当前仅支持SQLite的一些特性,包括:

1. 添加、编辑、删除SQLite数据库连接

2. 查看数据库表、视图、字段、索引、触发器等

3. 查看数据表结构、内容

4. 删除数据表

5. 根据系统主题自动切换暗黑/明亮主题

为什么选择Electron

带来的优点包括但不限于以下:

  1. JS足够简单,TS的发展也避免了部分脚本语言的问题
  2. 基于Monaco Editor编辑器,不必花太多精力放在编辑器的实现
  3. 足够熟悉Vue
  4. Arco Design,不必花太多的精力放在样式与基础组件的实现
  5. Ant x6,不必花太多的时间来自行实现ER图功能
  6. 跨平台,可以基于一套代码打包Windows、Linux、Mac程序
  7. 方便移植,做好代码的组织,在Pad端至少可以复用渲染进程的大部分代码,数据库驱动方面的内容在API稳定后考虑使用C++实现,由此来实现一套代码的多端适配。

从实现数据库可视化工具的角度看,选型各个方面都有足够优秀的一群人在推动生态发展,因此可以将大部分精力放在业务逻辑的实现上面。

很多人诟病Electron的打包体积和运行占用,其实我觉得大可不必:

  1. 显而易见的所有操作系统都将原生支持Webview,可以预见Electron会在未来某一天使用系统原生Webview来实现
  2. Electron的内存占用远没有想象中那么高,相对于Datagrip、DBeaver这种使用Java来实现的客户端,真不见得占用更高
  3. 支持Linux

开始的时候考虑过Flutter,但是如果真的使用Flutter,就需要花大量的精力放在编辑器、表格和ER图上面,需要学习太多与目标无关的东西,短时间也很难保证性能。

数据库支持路线图

  1. SQLite
  2. MySQL/MariaDB
  3. Redis
  4. PostgreSQL
  5. MongoDB