我需要做的是将sqlite3数据库从磁盘加载到内存中,使用它,当脚本退出时将内存数据库保存到磁盘。我该怎么做呢?谢谢!
答案 0 :(得分:1)
您需要做的只是connect
数据库 - 您可以随意执行任何操作。
from sqlite3 import connect
conn = connect("/path/to/your/sqlite.db")
# Do what you need to with the database here
# Changes (inserts, updates, etc) will be persisted
# to disk whenever you commit a transaction.
如果您需要能够运行一系列命令并将其全部回滚,如果一个命令不成功,您应该使用transaction。
如果您需要复制现有数据库,请对其进行更改,然后将其保存到其他地方仅在更改成功时才能执行以下操作之一:
ATTATCH DATABASE
命令将现有数据库附加到新的内存数据库。将所有数据从现有数据库复制到内存数据库并对其进行转换后,您可以附加新数据库并重新复制所有数据。sqlite3
的{{3}}将表格内容作为SQL脚本获取,然后将其作为Connection.iterdump
传递给sqlite3.Cursor.executescript
(使用in-内存或新数据库的磁盘连接字符串。)