python - 在 Python 中打开一个压缩的 SQLite 数据库

标签 python database sqlite compression

在 Python 中,是否有或多或少的 hacky 方法来打开压缩的 SQLite 数据库而无需在某处写入临时文件?

类似于:

import bz2
import sqlite3

dbfile = bz2.BZ2File("/path/to/file.bz2", "wb")
dbconn = sqlite3.connect(dbfile)

cursor = dbconn.cursor()
...

这当然会引发:

ValueError: database parameter must be string or APSW Connection object

最佳答案

底层 C 库直接使用文件名字符串。因此无法从 Python 透明地处理它。

参见 code on Github

根据您的操作系统,您可以使用 RAM 磁盘来处理该文件。如果你的 sqlite 文件比那个大,可能是时候切换到另一个数据库系统了,比如 Postgres。

关于python - 在 Python 中打开一个压缩的 SQLite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26574407/

相关文章:

python - 在 Mac 中导入自己的 Python 模块

php - 当变量内容发生变化时自动更新数据库

python - sqlite3中整数主键没有自动增量

c# - 删除sqlite中的where in子句

python - 未在 Python 中读取大波形文件

python - 使用 matplotlib 从各种表创建子图

python - 对于范围(defects.shape)中的i:AttributeError: 'NoneType'对象没有属性 'shape'

php - 托管和本地生产服务器之间的双向 mySQL 数据库同步

ios - 使用 Swift 的 Firebase 3.0 iOS Codelab 聊天应用程序教程

ruby-on-rails - Rails : Populate Heroku database with development. sqlite3 数据