sqlite-web
是一个基于Python编写的网页版SQLite数据库浏览器。
项目依赖:
安装
$ pip install sqlite-web
使用方法
$ sqlite_web /path/to/database.db
功能特性
- 可以使用现有的SQLite数据库,也可以用来创建新的数据库。
- 添加或删除:
- 表格
- 列(支持旧版本的Sqlite)
- 索引
- 将数据导出为JSON或CSV格式。
- 导入JSON或CSV文件。
- 浏览表格数据。
- 插入、更新或删除行。
截图
首页显示了数据库的一些基本信息,包括表格和索引的数量,以及其在磁盘上的大小:
"结构"标签页显示了表格的结构信息,包括列、索引、触发器和外键(如果存在)。在这个页面上,你还可以创建、重命名或删除列和索引。
可以轻松地添加、删除或重命名列:
"内容"标签页显示所有的表格数据。可以通过点击表头中的链接来对数据进行排序:
"查询"标签页允许你在表格上执行任意SQL查询。查询结果以表格形式显示,可以导出为JSON或CSV格式:
"导入"标签页支持将CSV和JSON文件导入到表格中。有一个选项可以为导入文件中任何未识别的键自动创建列:
"导出"标签页支持导出全部或部分列:
支持基本的INSERT、UPDATE和DELETE查询:
命令行选项
调用sqlite-web的语法为:
$ sqlite_web [选项] /path/to/database-file.db
可用的选项如下:
-p
,--port
: 默认为8080-H
,--host
: 默认为127.0.0.1-d
,--debug
: 默认为false-l
,--log-file
: 应用日志的文件名。-x
,--no-browser
: sqlite-web启动时不打开web浏览器。-P
,--password
: 提示输入密码以访问sqlite-web。 另外,密码也可以存储在"SQLITE_WEB_PASSWORD"环境变量中,这样应用程序就不会提示输入密码,而是使用环境中的值。-r
,--read-only
: 以只读模式打开数据库。-R
,--rows-per-page
: 设置内容页面的分页,默认每页50行。-Q
,--query-rows-per-page
: 设置查询页面的分页,默认每页1000行。-T
,--no-truncate
: 禁用长文本值的省略号。如果使用此选项,始终显示完整的文本值。-e
,--extension
: 可加载扩展的路径或名称。要加载多个扩展,为每个扩展指定-e [path]
。-f
,--foreign-keys
: 启用外键约束pragma。-u
,--url-prefix
: 应用的URL前缀,例如"/sqlite-web"。-c
,--cert
和-k
,--key
- 指定SSL证书和私钥。-a
,--ad-hoc
- 使用临时SSL上下文运行。
使用docker
sqlite-web提供了一个Dockerfile。使用方法:
$ cd docker/ # 切换到包含Dockerfile的目录
$ docker build -t coleifer/sqlite-web .
$ docker run -it --rm \
-p 8080:8080 \
-v /path/to/your-data:/data \
-e SQLITE_DATABASE=db_filename.db \
coleifer/sqlite-web