结果集网格
执行 SQL 后,结果在下方网格区域展示。
分页 + 虚拟滚动
- 默认每页 200 行,可在
Settings → 默认页大小改 - 大结果集(> 10000 行)自动启用虚拟滚动,只渲染可视区行,流畅滚 100 万行也不卡
- 底部分页器:首页 / 上 / 下 / 末页 + 跳转输入框
可编辑模式
单表 SELECT 的结果默认可编辑(检测到 JOIN / 聚合则禁用):
改单元格
- 双击 cell → 立即进入编辑态(光标自动聚焦 + 已有文本被选中,直接键入覆盖)
- 输入框严格贴合 cell 宽高,所见即所得
- Enter 确认 / Esc 退出
- 已改的 cell 亮底色标 dirty
新增行
- 工具栏"➕ 新增行"或网格底部空行直接键入
- 多列编辑:Tab 切下一列
- 主键列保留空 → DB 默认值 / 自增
删除行
- 勾选行(多选)→ 工具栏"🗑 删除选中"
- 整行红色 dirty 标记
撤销 / 提交
- "↺ 撤销"恢复所有未提交修改
- "✓ 提交"弹"SQL 预览"对话框:sql
UPDATE users SET email='new@x.com' WHERE id=42; INSERT INTO users (name, email) VALUES ('Bob', 'bob@x.com'); DELETE FROM users WHERE id=99; - 用户确认后整体事务提交;失败自动 ROLLBACK,撤销不丢
单元格视觉
- NULL → 灰底
NULL文字 - 空字符串 → 浅灰
''占位符 - 长文本 → 截断显示 + 末尾省略号 + tooltip
- JSON → 等宽字体 + 颜色高亮(对象 / 数组 / 字面量)
- BLOB → 自动识图(PNG / JPEG / GIF / WEBP 头识别),否则显示
<BLOB N bytes>+ hex 预览 - 数字列 → 列头自动添加 sparkline 小折线图(显示该页数据趋势)
- null 单元格 / 大数字 → 默认条件着色(可在 Settings 关闭)
列操作
列头右键菜单
- 复制列名
- 按此列升序 / 降序 / 取消排序
- 隐藏 / 显示
- 添加过滤
- 添加引用字段(若为 FK,JOIN 引用表的某列拉过来一起显示)
列宽
拖拽列头边界调整;双击列头边界自动适应内容宽度。
过滤
工具栏 🔍 按钮或列头右键 → 添加过滤,支持:
- 字符串:contains / startsWith / regex
- 数字:
= != < > between - 日期:范围
- 布尔:勾 / 取消
- NULL:
IS NULL/IS NOT NULL
多列叠加 AND;Excel 风格多值过滤:点击列头右上 ⋯ → 显示该列 distinct 值的勾选列表。
排序
- 列头点击:升序 → 降序 → 取消
- 多列排序:按住 Shift 依次点击
复制
选中区域 → ⌘C / Ctrl+C → 复制(默认 TSV)。
工具栏"复制为":
- CSV
- TSV
- JSON 数组
- Markdown 表格
- SQL
VALUES (...)(便于粘贴到 INSERT) - SQL
INSERT INTO ...(完整插入语句)
导出
工具栏"导出"按钮 → 弹格式选择对话框:
- CSV / TSV — 行 / 字段分隔符可定制
- JSON / NDJSON — 数组 / 一行一文档
- Excel .xlsx — 真 SheetJS 写,公式 / 样式可保留
- Markdown / HTML — 表格 + 可选样式
- SQL INSERT — 全表数据搬另一个库时省心
- 加密 .skbk(实验)— AES-256-GCM + PBKDF2,数据出门加锁
外键跳转
- cell 右键 → "跳转到引用行" — 自动定位 referenced 表 + WHERE 条件
- cell 右键 → "查反向引用" — 哪些表 / 行引用了当前值
Cell 右键菜单 — 问 AI / 跨表搜值
每个 cell 右键:
- 复制
- 跳转到引用行 / 查反向引用
- 跨表搜该值 — 这个值在数据库别处有没有出现
- 问 AI — 选中的错误或异常数据扔给 AI 分析
多视图
工具栏右上的视图切换:
- 网格(默认)
- JSON(原始 JSON,适合调试)
- 表单(单行多列时用,纵向 label-value 表单编辑一行)
- 透视表
- 自引用 FK 树(父子关系数据,如评论 / 部门)
- 地理散点图(经纬度列自动识别)
- 时间轴(时间列 + 数值列 → 折线 / 柱状)
- 图表(柱 / 线 / 饼,可导出 PNG)