Hier mal ein minimales Beispiel, wie man ZODB nutzen kann... Auch wenn es in dem Falle nicht viel mehr als Pickle/Unpickle ist:
1 from ZODB import DB, FileStorage
2 fstorage = FileStorage.FileStorage("ZODBminimal.fs")
3 MyDB = DB(fstorage)
4 connection = MyDB.open()
5 DBroot = connection.root()
6
7 def schreiben1():
8 print "Werte setzen 1...",
9 DBroot[1] = "ZODB ist cool"
10 DBroot[2] = ["Perl","ist","doof"]
11 get_transaction().commit() # Änderungen in DB schreiben
12 print "OK\n"
13
14 def schreiben2():
15 print "Werte setzen 2...",
16 DBroot[1] = "ZODB ist super cool!"
17 DBroot[2] = "PHP ist auch doof"
18 get_transaction().commit() # Änderungen in DB schreiben
19 print "OK\n"
20
21 def Anzeigen():
22 print "Anzeigen:"
23 print "-"*35
24 for i in DBroot.keys():
25 print "%5s : %s" % (i, DBroot[i])
26 print "-"*35
27
28 Anzeigen()
29
30 schreiben1()
31
32 Anzeigen()
33
34 schreiben2()
35
36 Anzeigen()
37
38 MyDB.pack() # Datenbank packen: Unnötige, alte Daten verwerfen.