11. Data Persistence¶
The modules described in this chapter support storing Python data in a
persistent form on disk. The pickle
and marshal
modules can turn
many Python data types into a stream of bytes and then recreate the objects from
the bytes. The various DBM-related modules support a family of hash-based file
formats that store a mapping of strings to other strings. The bsddb
module also provides such disk-based string-to-string mappings based on hashing,
and also supports B-Tree and record-based formats.
The list of modules described in this chapter is:
- 11.1.
pickle
— Python object serialization - 11.2.
cPickle
— A fasterpickle
- 11.3.
copy_reg
— Registerpickle
support functions - 11.4.
shelve
— Python object persistence - 11.5.
marshal
— Internal Python object serialization - 11.6.
anydbm
— Generic access to DBM-style databases - 11.7.
whichdb
— Guess which DBM module created a database - 11.8.
dbm
— Simple “database” interface - 11.9.
gdbm
— GNU’s reinterpretation of dbm - 11.10.
dbhash
— DBM-style interface to the BSD database library - 11.11.
bsddb
— Interface to Berkeley DB library - 11.12.
dumbdbm
— Portable DBM implementation - 11.13.
sqlite3
— DB-API 2.0 interface for SQLite databases- 11.13.1. Module functions and constants
- 11.13.2. Connection Objects
Connection
Connection.isolation_level
Connection.cursor()
Connection.commit()
Connection.rollback()
Connection.close()
Connection.execute()
Connection.executemany()
Connection.executescript()
Connection.create_function()
Connection.create_aggregate()
Connection.create_collation()
Connection.interrupt()
Connection.set_authorizer()
Connection.set_progress_handler()
Connection.enable_load_extension()
Connection.load_extension()
Connection.row_factory
Connection.text_factory
Connection.total_changes
Connection.iterdump
- 11.13.3. Cursor Objects
- 11.13.4. Row Objects
- 11.13.5. SQLite and Python types
- 11.13.6. Controlling Transactions
- 11.13.7. Using
sqlite3
efficiently - 11.13.8. Common issues