在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
谢谢!
答案 0 :(得分:3)
底层C库直接使用文件名字符串。因此,没有办法透过Python透明地处理它。
根据您的操作系统,您可能可以使用RAM磁盘处理该文件。如果你的sqlite文件比那个大,那么可能是时候切换到另一个DB系统了,比如Postgres。