ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

DB Browser for SQLite:一款免费而完整的 SQLite 数据库管理工具

DB Browser for SQLite:一款免费而完整的 SQLite 数据库管理工具

DB Browser for SQLite:一款免费而完整的 SQLite 数据库管理工具

【免费下载链接】sqlitebrowserOfficial home of the DB Browser for SQLite (DB4S) project. Previously known as "SQLite Database Browser" and "Database Browser for SQLite". Website at:项目地址: https://gitcode.com/gh_mirrors/sq/sqlitebrowser

DB Browser for SQLite(常缩写为 DB4S)是一款免费开源的图形化 SQLite 数据库管理工具,可以直接打开 .db / .sqlite 数据库文件,用表格界面浏览和编辑数据、执行 SQL 查询、导入导出 CSV 与 SQL 脚本。

如果你手里拿到一个 .db 文件,不知道里面存了哪些表、数据长什么样;或者要检查某个 App 自带的本地数据库,每次都得翻出命令行 sqlite3 再和语法较劲——这两种情况正是 DB4S 要解决的。

一分钟认识 DB4S

DB4S 的定位是替代 SQLite 命令行的图形化工具:点几下鼠标就能打开数据库、查看结构,像在电子表格里改单元格一样改数据行,同时内置一个完整的 SQL 编辑器。它适合三类人——调试移动/桌面 App 本地数据库的开发者、偶尔需要查数的运维、正在学 SQL 的人。项目采用 GPL-3.0 协议开源,界面支持中文在内的多种语言,Windows、macOS、Linux 均可运行。

📦 安装并首次打开

按你的系统任选一条命令:

  • Windows:winget install DBBrowserForSQLite.DBBrowserForSQLite
  • macOS:brew install --cask db-browser-for-sqlite
  • Ubuntu/Debian:sudo apt install sqlitebrowser

启动后,工具栏左侧是“新建数据库”和“打开数据库”。点击“打开数据库”选择一个 .db 文件,左侧会立刻列出表、索引、视图与触发器,双击任意一张表就能看到数据。如需自行编译源码,参考 BUILDING.md,要求 Qt 5.15.9 或更高版本。

核心工作流:从建库到导出的四步

第一步:新建数据库与表

点击工具栏“新建数据库”,选择保存位置,文件名建议用 .db 扩展名。建库后在 Database Structure 选项卡点“创建表”:输入表名,逐列添加字段并指定数据类型,勾选是否作为主键。类型一般用 INTEGER、TEXT、REAL 就够,需要自增就在列属性里勾 Primary Key。

第二步:导入现有数据

菜单栏“导入”→“从 CSV 文件导入表”,选择 CSV 文件后设置分隔符与编码,预览区可确认表头是否被正确识别为列名。确认后数据库里会出现同名表。如果 CSV 没有表头,记得勾选“首行不是表头”选项,避免丢一行数据。

第三步:查询与编辑数据

切到 Browse Data 选项卡,表以电子表格形式打开:列头有过滤框可直接输入条件,点列头即可按该列排序。复杂逻辑去 Execute SQL 选项卡写查询,比如SELECT name, count(*) FROM orders GROUP BY name。编辑器带语法高亮,底部 SQL Log 会记录每条已执行语句,便于回溯改动。修改数据则直接在表里选中单元格输入新值。

第四步:导出结果

把要保留的表或查询结果选中,点工具栏“导出”,可以选择导出为 CSV,或导出为带 INSERT 语句的 SQL 脚本。后者在跨系统迁移时特别方便,脚本可以直接在目标库执行。

两个典型使用场景

跨系统迁移:把旧数据搬进新库

适合旧服务下线、数据存在 SQLite、而新系统读别的库的情况:

  1. 用 DB4S 打开旧库,确认要迁移哪些表、哪些列。
  2. 对目标表执行导出,得到 CSV 或 SQL 脚本。
  3. 在新库中建好同名表,导入 CSV。
  4. 在 DB4S 与新系统里各抽查若干行和总条数,确认一致。

数据核对:验证生产库快照

适合迁移或脚本改动之后,需要快速确认数据没被改坏:

  1. 把生产库快照复制到本地目录,始终在副本上操作,不要碰原文件。
  2. 用 DB4S 打开副本,浏览主表确认行数与关键列分布。
  3. 在 SQL 选项卡写核对查询,比如统计订单总数与已完成订单数,与业务侧数字比对。
  4. 把核对结果导出为 CSV 留档。

常见问题与避坑

打开文件报错怎么办?先确认文件确实是 SQLite 数据库。若该文件经过 SQLCipher 加密,打开时需在密码框输入口令,否则会被误报为格式错误。

导入 CSV 乱码?大多是编码问题。在导入对话框里按文件来源选择 UTF-8 或 GBK,预览区会立刻显示是否正确——Windows 上导出的中文数据常见 GBK 编码,切换一次即可。

保存时报 “database is locked”?SQLite 是单写文件库,说明还有另一个进程(通常是那个 App 本身)占着文件。先关闭占用该数据库的应用再编辑。

会不会丢数据?DB4S 没有回收站:所有修改停留在内存中,直到点“Write Changes”才真正写入磁盘,点“Revert Changes”可撤销整批改动,所以大胆试错没关系。但这同时意味着不能把它当唯一备份手段,重要数据库请在改动前留一份副本。

进阶与维护

  • 数据库体积膨胀后,用“文件”菜单的“压缩数据库”(执行 VACUUM)回收空闲空间、缩小文件。
  • 经常出现在 WHERE 条件里的列建立索引,查询提速效果直接可见。
  • 遇到慢查询先跑EXPLAIN QUERY PLAN看它用了哪些索引,再调整索引策略。
  • 批量导入与更新尽量放在一个事务里执行,逐行提交的 SQLite 性能会明显变差。

开始使用

DB4S 替代不了专业的数据库运维,但对于“打开库、看数据、搬数据”这些高频需求,它足够快也足够稳,而且免费。下次再遇到一个陌生的 .db 文件,不妨先用它打开看看,两分钟内你就能得到答案。

【免费下载链接】sqlitebrowserOfficial home of the DB Browser for SQLite (DB4S) project. Previously known as "SQLite Database Browser" and "Database Browser for SQLite". Website at:项目地址: https://gitcode.com/gh_mirrors/sq/sqlitebrowser

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进