Skip to content

v0.8.0

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Aug 03:20
· 4 commits to main since this release
12d3aae

新功能

  • 新增 SQLite 支持:新建连接可选 SQLite,选一个本地 .db 文件即可打开,不需要主机 / 账号。库树、表结构、数据浏览与编辑、SQL 编辑器(含 SQLite 方言补全与格式化)、CSV 导入、dump 导出与导入、结构对比与表复制都已接通;「应用只读」会让文件以只读方式打开。备份 / 恢复走官方 sqlite3 命令行。
  • 连接可设「应用只读」:前端禁用写入口,后端拒绝写 SQL / 导入 / 恢复 / 拷贝目标 / ANALYZE。这不是数据库账号权限。
  • 连接可打生产 / 预发 / 开发标签,列表圆点和确认框会带上。
  • 选中表后可「复制表」:预览建表 SQL,手输新表名后创建,可选再拷数据。
  • 结果格双击打开检查器,区分 NULL 与空串,JSON 会格式化;外键可跳到引用行。
  • 修改表支持非主键列重命名(预览 RENAME COLUMN)。EXPLAIN 树会标出全表扫描 / 顺序扫描等提示。
  • 应用菜单新增「Settings...」(⌘,),位于「Check for Updates...」下方:可开关自动检查更新、填更新代理、设置数据浏览默认每页行数、调 SQL 编辑器字号、开关写操作二次确认,并提供主密码管理入口与版本信息。改动即时生效,偏好存在本机,不随连接配置分享。
  • 更新可走代理:设置里填好代理地址并点 ✓ 保存后,检查更新与下载更新包都经该代理;支持 http / https / socks4 / socks4a / socks5 / socks5h,留空为直连。点 ✕ 放弃本次改动。

体验优化

  • 关系图首屏大幅提速:结构改为一次性拉回整库(原先每张表要查列 / 索引 / 约束三轮),74 张表的库实测从约 10 秒降到 0.7 秒;切走再切回 5 分钟内直接用缓存,工具栏新增刷新按钮强制重拉。
  • 关系图的缩放和平移改为直接绘制画布,不再逐帧走状态更新,触控板捏合 / 双指滚动不掉帧;实体卡片只在自身变化时重绘。
  • 关系图重做为 ER 画布:每张表按数据库实体展示——表头是表名与表注释,主键置顶,每列带键位图标(主键 / 外键 / 唯一 / 索引)、列注释和数据类型(* 表示 NOT NULL);外键用鸦爪连线连到具体列,线走卡片外侧不再横穿。画布可拖动平移、滚轮平移、⌘/Ctrl + 滚轮缩放,工具栏提供放大 / 缩小 / 适应视图 / 复位,单张表也能拖着摆位。点表在对象树里选中它并高亮其关系,点连线看引用明细,点空白取消高亮。有外键的表按关系成组排在上方,孤立表在下方铺成网格;表多时可一键折叠成表头(超过 40 张表默认折叠)。
  • 工作台「浏览 / 关系图 / 对比 / 权限」与对象树顶栏操作改为图标按钮,悬停仍显示原说明;对象树不再展示「数据库对象」标题。
  • 设置 → 通用可切换外观:跟随系统 / 浅色 / 深色。默认跟随系统,立即生效并保存在本机;暗色底为 #181818
  • 会话页顶部链路图更紧凑,节点卡片宽度随内容自适应,IP+端口不再被截断成省略号(超长内容悬停可看全文)。
  • 链路图延迟标签不再带「SSH」前缀,只显示毫秒 / 超时 / 不可用;进入数据库的边上会显示累计 SELECT 1 延迟(末跳不是 SSH session,测不到协议 RTT)。链路条改成可拖动画布,节点多了可以按住拖着看。

修复

  • 连接成功后链路图横线上方的 SSH 延迟标签迟迟不显示:首个 RTT 采样事件会被连接流程的守卫或收尾重置吞掉,要等下一个采样周期才出现;现在连接收尾会保留已到达的采样,采样间隔也从 10 秒缩到 5 秒。
  • 新建 / 编辑连接弹窗里点「测试连接」时,SSH 指纹信任(TOFU)弹窗不再被压在连接弹窗后面,可以正常点击。

已知限制

  • SQLite:文件不存在时连接会失败(不自动建库);没有账号与权限视图;ALTER TABLE 只支持改名 / 加列 / 删列,改类型、空性、默认值需重建表,修改表对话框会直接拦下;表定义里声明的 UNIQUE 约束(sqlite_autoindex_*)不能单独删除,同样需重建表;CHECK 约束不在结构页列出;复制表不带索引;官方备份(sqlite3 .dump)只能整库,单表请用内置 dump 导出。外键约束默认开启(SQLite 自身默认关闭);改写数据库的 PRAGMA(如 PRAGMA journal_mode = WAL)按写操作处理,需二次确认。
  • 「应用只读」不是数据库账号权限;未打开只读的连接仍可能误写。
  • 设置里关掉「写操作二次确认」后,写语句不再弹确认直接执行;「应用只读」连接与后端护栏仍会拦截。
  • 更新代理地址点 ✓ 时才校验并保存,非法地址会标红且不保存。代理仅作用于更新,数据库连接与 SSH 隧道不受影响。
  • 复制表只在当前连接同库;MySQL LIKE 不含数据,PG DDL 为元数据重建。
  • 外键跳转仅当前连接当前库;检查器不直接写回。
  • 仍不能重命名或拆换主键。