in Ram database?
William Trenker
wtrenker at shaw.ca
Fri Sep 5 16:30:58 EDT 2003
On Thu, 04 Sep 2003 19:14:05 -0700
"John D." <lists at webcrunchers.com> wrote regarding in Ram database?:
> Does anyone know if there is an "in-ram" dictionary based database
> for Python.
This may not be quite what you want, but the SQLite embedded SQL engine has an in-memory option. You would access SQLite using the PySQLite wrapper which is DB-API-2 compliant. Here are the links:
http://sqlite.org (download the latest version 2.8.6)
http://pysqlite.sourceforge.net
Cheers,
Bill
Here is a simple example:
import sqlite #module name exposed by the PySQLite wrapper
conn = sqlite.connect(db=':memory:') #special connect string to open an in-memory db
cursor = conn.cursor() #standard DB-API-2 from this point
cursor.execute('create table test (a varchar, b int);')
cursor.execute('commit;') #end PySQLite implicit transaction
cursor.execute('begin transaction;') #wrap the inserts in an explicit transaction for speed
for i in range(0,10000):
cursor.execute('insert into test (a,b) values (%s,%i);'%(str(i),i))
cursor.execute('commit;')
cursor.execute('select sum(b) from test;')
print cursor.fetchall()[0][0]
More information about the Python-list
mailing list